Объявление форума |
Если пользуетесь личными сообщениями и получили по электронной почте оповещение о новом письме, не отвечайте, пожалуйста, почтой. Зайдите на форум и ответьте отправителю через ЛС. |
Полигон-2 » Технический флейм » Практическое применение многопроцессорных 586/686 |
<<Назад Вперед>> | Страницы: 1 2 3 * 4 | Печать |
BreakPoint |
Сообщение отправлено: 12 декабря 2016 11:19
пораскинул мозгами, в случае ПИО действительно 2 слабых проца могут быть лучше одного шустрого. т.к. для медленных ИО процессорный квант будет более рационально использоваться |
Сейчас на форуме |
La Forge
Advanced Member
Lt. Cmdr. Откуда: Рязань Всего сообщений: 3248 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 16 нояб. 2012 |
BreakPoint написал: Та блин. Есть CHM-файл из сотни html-страниц. Если эту сотню мелких файлов по одному читать с диска это одно. Каспер же берёт ОДИН такой составной файл, распаковывает его в оперативке (если её хватает) и делает опять же всё в памяти. Повторю: с диска читается ОДИН файл. (когда сидишь на 98-й с 32Мб ОЗУ это очень чувствуется. Проверено на себе ) только вот при доступе к множеству маленьких файлов дисковая система больше всего и нагружается. |
Rio444
Гость
Откуда: Ростов-на-Дону Всего сообщений: 8632 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 14 сен. 2014 |
BreakPoint написал: Вы забываете, что А есть ещё такая вещь, для которой до сих пор не придумали тестов, как отзывчивость. Кликаете мышкой на кнопку пуск, переключатесь между окнами, отрываете "Мои документы". На одних системах это происходит почти мгновенно. На других компьютер "задумывается". Уже писал, как сравнивал PIII-S 1400@1575 с Celeron 420 1600. Кэш 512кб и там и там. У селерона SSE3. Селерон немного лучше воспроизводит HD видео. Но работать на нем очень некомфортно. Пентиум открывает видеофайл за доли секунды. У селерона на это уходит несколько секунд. Такая же заторможенная реакция на остановку видео. То же касается и обычной работы на компьютере. Задержка конечно не секунды, но хорошо заметна. |
uav1606
Advanced Member
Откуда: Енакиево Всего сообщений: 4373 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 16 янв. 2008 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 12 декабря 2016 11:47 Сообщение отредактировано: 12 декабря 2016 11:48
BreakPoint, на практике, к сожалению, приоритет не всегда можно установить - у антивируса, например, или у системных процессов, т.к. запрещён доступ. Кроме того, ведь постоянно запускаются разные программы, для каждой вручную ставить приоритеты... Конечно, есть сторонние утилиты, которые облегчают всё это дело, но всё равно два процессора или ядра намного комфортнее в работе. |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
BreakPoint написал: Один процессор будет занят обработкой прерываний (прерываний/секунду в PIO режиме больше так а чем второй проц в ПИО поможет? чем в DMA) от диска и программным обменом с к диском, а второй свободен для остального. Это сильно упрощенно, на самом деле функции процессоров могут периодически меняться, и не такое четкое разделение. Можете проверить сами - переключите диск (лучше не-системный) в PIO, а потом примерно так: dd if=/dev/dev_name of=/dev/null bs=1m На двухпроцессорной машине лишь небольшое торможение, на одном процессоре невозможно работать DMA собственно в какой-то степени тоже второй процессор, для этого и придумали, чтобы разгрузить main CPU. |
BreakPoint |
NEW! Сообщение отправлено: 12 декабря 2016 12:59
Rio444 написал: откуда инфа? напишите простенькое приложение, и запустите его под дос и под винду. и посмотрите какая будет разница. уж тожно не 10-20% И незаметные 1-2% выливаются в 10-20% и больше. переключение потока это далеко не единтвенная причина сброса конвеера. регистры действительно сохраняются. но эти операции ничтожно малы по сравнению с квантом, корорый дается потоку. само по себе переключение потока никаких подкачиваний кэша не вызывает. если новозапущенный поток затребует данные, которых нет в кэше - то запустится кэш лай филл, если нет - то нет. это во первых. во вторых в контексте многопроцессорных систем все становится еще хуже. планировщик потоков в винде не гарантирует, что поток будет всегда исполнятся на каком то процессоре. то есть исполнялся поток на процессоре 1, и тут вдруг планировщику что то стрельнуло, и он этот поток на проц 2 отправил. а все данные и код остались в кэше процессора 1. и вот проц 2 загружает в кэш код и данные. исполняет поток отведенный квант. и тут планировщику опять "стреляет" и поток перепланируется на проц 1. естесвенно планировщик потоков не дураки делали, и он такие ситуации старается разруливать. но тем не менее такое случается. конечно поток можно "руцями" пригвоздить к определенному процессору. но гайд майкрософта по многопоточным приложениям этого крайне не рекоммендует. более того, можно написать простую многопоточную программу, которая на системе с одним процом будет работать в несколько раз быстрее чем на системе с одним процом По поводу отзывчивости ничего сказать не могу, т.к. это чисто субъективная оценка |
Сейчас на форуме |
aleksvolgin
Advanced Member
Всего сообщений: 2123 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 21 нояб. 2010 |
Бздуны так и делают, в роутерах. конечно поток можно "руцями" пригвоздить к определенному процессору |
Rio444
Гость
Откуда: Ростов-на-Дону Всего сообщений: 8632 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 14 сен. 2014 |
Профиль | Сообщить модератору
NEW! Сообщение отправлено: 12 декабря 2016 13:56 Сообщение отредактировано: 12 декабря 2016 13:58
BreakPoint написал: В DOS процессор тоже постоянно "отвлекается" на прерывания. Прогоните тесты на слабой машине, уровня 386, с отключенной и включенной мышью. А ведь прерывания мыши - далеко не единственные. откуда инфа? напишите простенькое приложение, и запустите его под дос и под винду. и посмотрите какая будет разница. уж тожно не 10-20% 10-20% - экспертная оценка. Относится к не очень мощному процессору, до 1 ГГц. BreakPoint написал: Году в 2006 был у меня Athlon64 x2 3600 s939. С актуальной на то время виндой (скорее всего WinXP SP2), именно так и было. Создавалось впечатление, что одно ядро полностью отдано операционке, второе - основному приложению. Переключение по Alt+Tab из Prey в Windows происходило за доли секунды. На одноядернике Athlon64 4000 2400@2880 - примерно пару секунд. то во первых. во вторых в контексте многопроцессорных систем все становится еще хуже. планировщик потоков в винде не гарантирует, что поток будет всегда исполнятся на каком то процессоре. то есть исполнялся поток на процессоре 1, и тут вдруг планировщику что то стрельнуло, и он этот поток на проц 2 отправил. а все данные и код остались в кэше процессора 1. и вот проц 2 загружает в кэш код и данные. исполняет поток отведенный квант. и тут планировщику опять "стреляет" и поток перепланируется на проц 1. Потом мелкософт что-то докрутил в винде, и двухядерники потеряли такую отзывчивость. Плюс сами программы стали использовать два и более ядер. |
BreakPoint |
NEW! Сообщение отправлено: 12 декабря 2016 14:45
есть у меня мамка на 440LX двухпроцессорная. если ее с одним процом запускать, то терминатор нужен? |
Сейчас на форуме |
i8088
Advanced Member
Откуда: г. Баку, Азербайджан Всего сообщений: 2132 Рейтинг пользователя: 0 Ссылка Дата регистрации на форуме: 30 янв. 2015 |
BreakPoint написал: Формально нужен, но из-за невысокой FSB как правило и так работает. Во FreeBSD SMP есть у меня мамка на 440LX двухпроцессорная. если ее с одним процом запускать, то терминатор нужен? можно отключить kern.smp.disabled=1, и не надо вытаскивать процессоры. Только не делайте эту проверку на версии FreeBSD 4.x, ее SMP очень сырой, используется так называемая BIG GIANT LOCK, и выигрыш во многих задачах гораздо меньше теоретически возможного. Иногда даже проигрыш был. Начиная с версии 5.x BIG GIANT стали дробить на мелкие + новый планировщик - и работа SMP резко улучшилась! Об отзывчивости - эта схема microsoft (GUI - один условный процессор, второй все остальное) смешная и нелепая конечно, но для рабочей станции может действительно уменьшать время реакции от user-а. Однако она плохо масштабируется, если число CPU >2. А вот для сервера такая схема бесполезна, тк GUI там и не нужен фактически. BreakPoint написал: Я даже больше скажу - начиная с FreeBSD 8.4(именно 8.4) активный процесс периодически это во первых. во вторых в контексте многопроцессорных систем все становится еще хуже. планировщик потоков в винде не гарантирует, что поток будет всегда исполнятся на каком то процессоре. то есть исполнялся поток на процессоре 1, и тут вдруг планировщику что то стрельнуло, и он этот поток на проц 2 отправил. а все данные и код остались в кэше процессора 1. и вот проц 2 загружает в кэш код и данные. исполняет поток отведенный квант. и тут планировщику опять "стреляет" и поток перепланируется на проц 1. меняет CPU, на котором он исполняется. Так в версии 8.3 запускаем один экземпляр >dd if=/dev/zero of=/dev/null bs=1m> - и греется AP CPU, BSP холодный. Запускаем второй экземпляр dd - грееются и AP, и BSP CPU. В версии 8.4 даже один экземпляр dd "бегает" между CPU, и нагрев равномерный. Все это видно по выводу >top -P>, переключение происходдит раз в несколько секунд. |
<<Назад Вперед>> | Страницы: 1 2 3 * 4 | Печать |
Полигон-2 » Технический флейм » Практическое применение многопроцессорных 586/686 |
0 посетителей просмотрели эту тему за последние 15 минут |
В том числе: 0 гостей, 0 скрытых пользователей |
Последние | |
[Москва] LIQUID-Акция. Сливаются разъемы CF МС7004 и 7004А на AT и XT Пайка термотрубок Проммать s478 PEAK 715VL2-HT ( Full-Size SBC) Подскажите по 386 материке по джамперам. |
Самые активные 5 тем | |