Указание ЦП для сборки Ядра
Правила форума
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [cоde] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2014-08-02 23:21:47
Указание ЦП для сборки Ядра
Здравствуйте. Делаю пересборку ядра. И вот в графе ЦП стоит у меня почему-то HAMMER, что есть архитектура К8. Но у меня стоит Phenom II, - архитектура К10. Где исходя из make.conf значение должно быть как amdfam10. Установка amdfam10 в конфиге ядра выдаёт ошибку. Где ругается именно на неизвестный параметр.
Т.е. Ошибка номер такой-то Неизвестный параметр amdfam10. При попытке сборки ядра.
В итоге вот и не знаю, какой правильный параметр ЦП установить. Затачивать ядро под старую архитектуру как-то глупо, когда есть более новая по сравнению с К8.
Кто знает, подскажите пожалуйста
П.С. На всякий случай добавлю. ЧТо dmseg определяет правильно. При указании в make.conf amdfam10, компилирует порты тоже правильно. ВОпрос состоит именно в избежании заточки ядра под ненужный К8,когда используется К10!
Т.е. Ошибка номер такой-то Неизвестный параметр amdfam10. При попытке сборки ядра.
В итоге вот и не знаю, какой правильный параметр ЦП установить. Затачивать ядро под старую архитектуру как-то глупо, когда есть более новая по сравнению с К8.
Кто знает, подскажите пожалуйста
П.С. На всякий случай добавлю. ЧТо dmseg определяет правильно. При указании в make.conf amdfam10, компилирует порты тоже правильно. ВОпрос состоит именно в избежании заточки ядра под ненужный К8,когда используется К10!
Последний раз редактировалось f_andrey 2014-08-03 2:14:03, всего редактировалось 1 раз.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.
Причина: Автору. пожалуйста, выбирайте соответствующий раздел форума.
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- сержант
- Сообщения: 187
- Зарегистрирован: 2011-08-18 12:46:45
Re: Указание ЦП для сборки Ядра
а ман покурить?
Код: Выделить всё
cpu cputype
Specify the CPU this kernel will run on. There can be more than
one cpu directive in a configuration file. The allowed list of
CPU names is architecture specific and is defined in the file
sys/conf/options.<arch>.
-
- подполковник
- Сообщения: 3929
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Re: Указание ЦП для сборки Ядра
Попробуйте такой тип проца как native, т.е. дайте компилятору самому определить какой проц он юзает.
Я считаю, что пересобирать систему под конкретный проц надо только, когда у вас сильно нагруженный приложением сервер, например используется java, в обычных реалиях разница в тестах 1-2 процента
Я считаю, что пересобирать систему под конкретный проц надо только, когда у вас сильно нагруженный приложением сервер, например используется java, в обычных реалиях разница в тестах 1-2 процента
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2014-08-02 23:21:47
Re: Указание ЦП для сборки Ядра
snorlov, спасибо за попытку. Но native вы путаете с конфигурацией в make.conf Я же ищу для указания в ЯДРЕ. Прошу читать более внимательно!
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2014-08-02 23:21:47
Re: Указание ЦП для сборки Ядра
PYO, спасибо за наводку. Только ничего там в отношении цп не вижу. Исходя из вопроса ведь не мудрено понять, что я новенький в ОС. Давайте без снобизма. Есть вопрос, если хотите помочь и знаете ответ. Дайте.
-
- проходил мимо
Re: Указание ЦП для сборки Ядра
Вы, простите, чего добиваетесь? или хотите добиться?korino писал(а):Здравствуйте. Делаю пересборку ядра. И вот в графе ЦП стоит у меня почему-то HAMMER, что есть архитектура К8. Но у меня стоит Phenom II, - архитектура К10. Где исходя из make.conf значение должно быть как amdfam10. Установка amdfam10 в конфиге ядра выдаёт ошибку. Где ругается именно на неизвестный параметр.
Т.е. Ошибка номер такой-то Неизвестный параметр amdfam10. При попытке сборки ядра.
В итоге вот и не знаю, какой правильный параметр ЦП установить. Затачивать ядро под старую архитектуру как-то глупо, когда есть более новая по сравнению с К8.
Кто знает, подскажите пожалуйста
П.С. На всякий случай добавлю. ЧТо dmseg определяет правильно. При указании в make.conf amdfam10, компилирует порты тоже правильно. ВОпрос состоит именно в избежании заточки ядра под ненужный К8,когда используется К10!
У Вас, еще раз простите, какая-то каша из отрывочных знаний или представлений.архитектура К8
архитектура К10
заточки ядра под ненужный К8
...
amdfam10
Вы чего в итоге хотите добиться:
- оптимальной сборки ядра или получить нестабильное и падающее ядро от непонимания разницы
между:
- архитектура;
- модель cpu;
- флаги оптимизации;
- опции компилятора влияющие на упаковку, выравнивание структур, проверку разнообразных warnings & errors
?
арихитектура:
- x86 (подразделяется на несколько видов "микроархитектур" 386, 486, 586, 686)
- x86_64 или amd64 ( кодовое название hammer - база k8, далее k10, core ...)
Обычно флаг -march
cpu:
- процессоры соответствующей архитектуры, в рамках компиляторов имеют некое обобщение и
собственное именование, связанное с поддержкой инструкций и технологий.
Обычно это флаг -mcpu
make.conf:
- CFLAGS - флаги компиляции "C"
- CXXFLAGS - аналогично для крестов
- COPTFLAGS - флаги компиляции ядра, ну ОЧЕНЬ не рекомендуется использовать разработчиками
прим: В связи с переходом на CLANG/LLVM, указанные флаги и использование cputype очень не рекомендуется,
они отличаются от ранее используемых в gcc и разнообразных описаний в примерах и документации FreeBSD.
прим: В отличие от GCC, коммерческие компиляторы и новые проекты, отличаются большей строгостью проверки
кода и станлартов, и могут вылетать на warnings и errors, которые с легкостью пропускает gcc, выдавая криво, но
работающий код.
Возвращаемся к файлу конфигурации ядра: man 5 config
cpu в ядре, означает архитектуру и имеет заведомо и строго определенные значения:
cpu HAMMER (для всей x64 архитектуры, будь то k8, k10, core)
все - иных значений cpu для amd64 нет и фиолетово какая там модель cpu с поддержкой 64bit
для i386:
Код: Выделить всё
cpu I486_CPU
cpu I586_CPU
cpu I686_CPU
вредна архитектурно, почему и выброшена из современной SMP архитектуры OS FreeBSD.
Маленький пример, соберете систему только с "cpu I586_CPU" на-а-а, наверное Pentium II, потом переставите
диск на машину с Pentium 4 и получите облом.
С ЯДРОМ - все.
Сборка системы и портов - флаги CFLAGS и CXXFLAGS, см выше, можно использовать оптимизацию, но архиважного
значения не имеют, а вот испортить жизнь - могут, без знаний и понимания.
Важное:
- для сборки системы лучше использовать /etc/src.conf
- для всего остального /etc/make.conf
прим: опции оптимизации, присутствуют в большинстве портов, в которых она действительно нужна и имеет
место быть, и главное - проверена и основное что используют, это On флаги оптимизации.
CPUTYPE - можно использовать для сборки портов, но как уже было сказано, необходимо понимать
как и для чего и в каком виде, эту опцию использует компилятор:
# less /usr/share/mk/bsd.cpu.mk
так что самое рекомендуемое значение native или вовсе не использовать.
прим: чтобы лучше представлять использование компилятором CPUTYPE (это НЕ ОДНО И ТО ЖЕ что "cpu в ядре"),
следует почитать документацияю gcc и clang/llvm. Хоть от gcc и ушли, но документация там в этом плане
более прозрачна чем в clang/llvm.
Смотрите crosscompiling (кросскомпиляцию) для изучения -march -mcpu.
-
- проходил мимо
- Сообщения: 4
- Зарегистрирован: 2014-08-02 23:21:47
Re: Указание ЦП для сборки Ядра
Вообще-то каша получилась у вас. Если не можете понять что вопрос был про указание ЦП под К10. Удивляет ваше утверждение, что нужно вписыать архтектуру,... Ёпт, взгляните на вопрос, я именно архитектуру и хотел. ПО всем правилам там должен был бы быть Dragon. К сожалению, как сегодня выяснилось на freebsd.org форуме. ТАм только Hammer жуткая вещь... столько лет прошло, а архитектуру Dragon не видит..
И к чему вы приплели флаги оптимизации никоим образом не влияющие на Ядро. Тут уж смотрите на Название темы. Ядро как бы, а не make.conf
Что-то вы изрядно переиграли в "умника"
ПОвторю специально для вас. Всё что нужно по make.conf я прекрасно знаю. И незачем тут устраивать столь жутчайший офтопик. Покажите в теме. Где я просил хоть что-то подобное?!?!? Смотришь в книгу, видишь -фигу...
Вы видимо это писали в какой-то мере для себя. Ибо смысл написанного применительно к данной теме -ноль. Повторю в который раз. Я даже не просил описание по настройка в make.conf ТАк что читайте хоть прежде чем отвечать....
И к чему вы приплели флаги оптимизации никоим образом не влияющие на Ядро. Тут уж смотрите на Название темы. Ядро как бы, а не make.conf
Что-то вы изрядно переиграли в "умника"
ПОвторю специально для вас. Всё что нужно по make.conf я прекрасно знаю. И незачем тут устраивать столь жутчайший офтопик. Покажите в теме. Где я просил хоть что-то подобное?!?!? Смотришь в книгу, видишь -фигу...
Вы видимо это писали в какой-то мере для себя. Ибо смысл написанного применительно к данной теме -ноль. Повторю в который раз. Я даже не просил описание по настройка в make.conf ТАк что читайте хоть прежде чем отвечать....
- Neus
- майор
- Сообщения: 2005
- Зарегистрирован: 2008-09-08 21:59:56
Re: Указание ЦП для сборки Ядра
Еще один заточник ядра
Надо им было эту опцию в конфиге обозвать как amd64 или x86_64
Надо им было эту опцию в конфиге обозвать как amd64 или x86_64
-
- подполковник
- Сообщения: 3929
- Зарегистрирован: 2008-09-04 11:51:25
- Откуда: Санкт-Петербург
Re: Указание ЦП для сборки Ядра
Я правильно понимаю, что вы считаете, что компилятор должен выбирать оптимизацию исходя из опций ядра...korino писал(а):.
И к чему вы приплели флаги оптимизации никоим образом не влияющие на Ядро. Тут уж смотрите на Название темы. Ядро как бы, а не make.conf
-
- проходил мимо
Re: Указание ЦП для сборки Ядра
Вы, либо обижены, либо непроходимо ...korino писал(а):Вообще-то каша получилась у вас. Если не можете понять что вопрос был про указание ЦП под К10. Удивляет ваше утверждение, что нужно вписыать архтектуру,... Ёпт, взгляните на вопрос, я именно архитектуру и хотел. ПО всем правилам там должен был бы быть Dragon. К сожалению, как сегодня выяснилось на freebsd.org форуме. ТАм только Hammer жуткая вещь... столько лет прошло, а архитектуру Dragon не видит..
И к чему вы приплели флаги оптимизации никоим образом не влияющие на Ядро. Тут уж смотрите на Название темы. Ядро как бы, а не make.conf
Что-то вы изрядно переиграли в "умника"
ПОвторю специально для вас. Всё что нужно по make.conf я прекрасно знаю. И незачем тут устраивать столь жутчайший офтопик. Покажите в теме. Где я просил хоть что-то подобное?!?!? Смотришь в книгу, видишь -фигу...
Вы видимо это писали в какой-то мере для себя. Ибо смысл написанного применительно к данной теме -ноль. Повторю в который раз. Я даже не просил описание по настройка в make.conf ТАк что читайте хоть прежде чем отвечать....
Еще раз для ...
Есть две архитектуры:
- x86
- x86_64 или amd64
в них укладывается как hardware представление, так и софтверное и плодить отдельные сущности из
названий, будь то k10 или core или какое другое, будет лишь идиот.
OS FreeBSD поддерживает платформы:
- x86 - i386
- x86_64 - amd64
В конфигурации ядра используются директивы "cpu", какие значения могут быть для какой архитектуры, Вам уже
отписали.
Вписывается не архитектура, а значения "cpu" для заданной архитектуры, какие они - отписано.
Флаги компилятора приведены для тупых, чтобы была понятна разница между сборкой ядра и остального ПО.
ps. Вы это, попросите чтобы Вам объяснили смысл анекдота про "на заборе написано", смысл "cpu HAMMER"
по гамбургскому счету, точно такой же.