Показать сообщение отдельно
Старый 05.12.2008, 00:32   #16  
gl00mie is offline
gl00mie
Участник
MCBMSS
Most Valuable Professional
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
Лучший по профессии AXAWARD 2013
Лучший по профессии 2011
Лучший по профессии 2009
 
3,684 / 5803 (201) ++++++++++
Регистрация: 28.11.2005
Адрес: Москва
Записей в блоге: 3
Цитата:
Сообщение от SHiSHok Посмотреть сообщение
Я думаю что эти рекомендации (именно рекомендации основанные на тестах, а не ограничения) были даны в те времена когда 2 процессора были двумя кристаллами, и, как сказано, это лучшее сочетание железо-производительность-инвестиции
Мне кажется, дело все же в том, что при большем числе доступных процессоров (т.е. большем, чем 2, количестве одновременно выполняющихся потоков того же процесса AOS) возрастают требования к распараллеливаемости выполняемого кода, и в случае с AOS 3-ей версии упирается все в библиотеку управления динамической памятью, а именно в SmartHeap 6.01. Некоторые изыскания на эту тему можно найти тут. Вкратце, SmartHeap бывает "обычная" для многопоточных приложений (но расчитанная на одно процессорное ядро) и для симметричных многопроцессорных систем - SmartHeap/SMP. Второй вариант библиотеки отличается тем, что одновременно выполняющиеся на разных процессорах (ядрах) потоки не блокируют друг друга на операциях с динамически выделяемой памятью. За счет этого производительность использующего SmartHeap/SMP многопоточного приложения, интенсивно работающего с динамически выделяемой памятью, гораздо лучше масштабируется с увеличением числа процессоров/ядер. В случае же "обычной" SmartHeap масштабируемость резко сходит на нет ориентировочно начиня с двух ядер.
Цитата:
Сообщение от glibs Посмотреть сообщение
По-моему, заявление о том, что АОС не сумеет загрузить больше двух процессоров, не доказано.
Конечно, могут быть разные варианты: значительную долю процессорного времени может использовать код, занимающийся интенсивными вычислениями и работающий с небольшим набором объектов, память под которые не нужно постоянно выделять/освобождать; в этом случае несколько сессий на AOS'е, выполняющих такой код, смогут успешно грузить многоядерные Xeon'ы. Но мне кажется, применительно к Аксапте это не самый типичный сценарий...