В предыдущих статьях нашего цикла, посвященного различным реальным приложениям, которые могут использоваться для тестирования процессоров, компьютеров, ноутбуков и рабочих станций и которые в дальнейшем будут положены в основу нового тестового пакета iXBT Application Benchmark 2017, мы уже рассмотрели довольно внушительный пакет различных приложений. Напомним, что это были приложения молекулярной динамики, видеоконверторы, приложения для редактирования и создания видеоконтента, редакторы цифровых фотографий, рендеры и даже математический пакет FFTW.
Осталось рассмотреть еще несколько приложений, которые можно использовать для тестирования процессоров и ПК, но нельзя отнести к одной логической группе: это такие распространенные приложения, как Abbyy FineReader и WinRAR. Кроме того, мы еще не рассмотрели пакет SolidWorks, а вместо математического пакета GNU Octave, как уже говорилось ранее, мы решили использовать математический пакет Mathworks Matlab.
Отметим, что FineReader, WinRAR и SolidWorks мы использовали для тестирования процессоров и ПК и ранее, однако тесты с использованием этих приложений мы немного изменили. Кроме того, поменялась версия программы WinRAR, а пакет Mathworks Matlab нами ранее не использовался. В тесте с использованием пакета SolidWorks ничего не изменилось, однако мы рассмотрим его, что называется, для полноты картины.
Напомним, что в предыдущей версии нашего тестового пакета iXBT Application Benchmark мы использовали еще и такие приложения, как Adobe Illustrator и Adobe Audition. Но в отношении целесообразности тестов с их использованием у нас есть большие сомнения. Почему — мы расскажем в конце этой статьи, но пока тесты на основе этих приложений мы рассматривать не будем.
Итак, начнем с тестов на основе Abbyy FineReader и WinRAR, которые, в принципе, можно отнести к одной логической группе, назвав ее «Офисные приложения». Вообще, понятие офисных приложений настолько расплывчато, что к этой группе можно отнести чуть ли не все, что угодно.
Abbyy FineReader 12
Версия приложения Abbyy FineReader в нашем новом тесте не изменилась, это по-прежнему FineReader 12, однако сам тест используется немного иной.
Тестирование, как и ранее, заключается в измерении времени распознавании PDF-документа. Но, во-первых, теперь мы используем более объемный (1103 страницы) документ на русском языке, в котором почти нет графики — «Большой толковый словарь правильной русской речи» Л. И. Скворцова. Ранее использовался 500-страничный документ на английском языке.
Во-вторых, изменился алгоритм измерения времени. Ранее за результат данного теста принималось время от открытия PDF-документа до момента, когда программа полностью заканчивает свою работу. Однако особенность работы приложения Abbyy FineReader 12 заключается в том, что весь процесс распознавания можно условно разделить на два этапа. На первом считываются страницы распознаваемого документа и эти считанные страницы распознаются. В ходе первого этапа FineReader создает небольшую нагрузку на накопитель и высокую нагрузку на процессор, причем процесс распознавания является многопоточным и хорошо распараллеливается на все доступные ядра процессора. На втором этапе (завершающем), когда все страницы документа уже распознаны, нагрузка на процессор резко снижается, однако программа не заканчивает свою работу и до полного завершения процесса проходит еще какое-то время. И это отнюдь не секунды, которыми можно пренебречь: к примеру, на ПК с четырехъядерным процессором Intel Core i5-6600K и SSD-накопителем завершающий этап занимает 15% от общего времени.
Если ранее, как уже отмечалось, за результат теста принималось время всего процесса, то есть с учетом завершающей фазы, то теперь мы учитываем только первый этап — время собственно распознавания документа с интенсивной загрузкой процессора. На наш взгляд, это более корректно, особенно если в тесте мониторится еще и температура процессора, его энергопотребление и загрузка. Усреднение этих показателей по двум этапам работы программы приводит к получению почти бесполезных результатов (aka средняя температура по больнице).
WinRAR 5.40
Тест на основе приложения WinRAR был нами полностью переделан. Поменялась и версия приложения (WinRAR 5.40), и сам тест.
Вообще, приложение WinRAR можно с успехом использовать и для тестирования процессора, и для тестирования накопителя. Если мы хотим загрузить процессор, то используем формат сжатия RAR5 и метод компрессии Best (максимальное сжатие). Далее “подсовываем” архиватору для сжатия файлы большого размера (с тем, чтобы минимизировать обращение к накопителю) и получаем очень высокую загрузку процессора. Какие именно файлы используются для сжатия, не столь важно — главное, чтобы они были большими по размеру. В том числе это могут быть и практически несжимаемые файлы, например дистрибутивы каких-либо программ или видео современных форматов. Конечно, такой тест получается несколько академическим в том смысле, что его условия оторваны от реальности и не имеют практического значения.
Можно поступить и иначе: использовать приложение WinRAR не для сжатия данных, а для упаковки множества отдельных файлов в один большой архив без сжатия. Для этого достаточно использовать метод компрессии Store (без сжатия). В этом случае мы получим практически полное отсутствие загрузки процессора, но экстремально высокую нагрузку на накопитель, то есть результат такого теста будет определяться исключительно производительность накопителя, а количество ядер процессора и их частота окажутся совершенно неважны.
Если же выбрать некий промежуточный вариант, когда используется невысокая компрессия, включая самый быстрый метод сжатия, то в результате и процессор не будет загружен, и нагрузка на накопитель окажется не очень высокой. Таким образом, вариант «золотой середины» тут не проходит — получается ни то ни се.
Поэтому с приложением WinRAR 5.40 мы поступили следующим образом. На его основе мы сделали два теста: один для процессора и один для накопителя. Подробно про тест для накопителя мы расскажем в следующей статье нашего цикла, а здесь мы уделим внимание лишь тесту с нагрузкой на процессор.
Итак, для загрузки процессора в тесте с использованием приложения WinRAR 5.40 (название теста — «WinRAR CPU») используется формат сжатия RAR5 и метод компрессии Best (максимальное сжатие). Сжатию подвергается папка размером 2,87 ГБ, которая содержит 100 фотографий в RAW-формате. Как мы уже сказали, какие именно данные подвергаются компрессии, в данном случае не принципиально — главное, чтобы не было мелких файлов. В нашем случае размер одного файла (одной фотографии) составляет 28-30 МБ. Результатом теста является время сжатия данных.
Отметим, что ранее (в предыдущей версии теста нашего тестового пакета) мы также использовали операцию сжатия с форматом RAR5 и методом компрессии Best. Но для сжатия использовались немного иные данные (фотографии в формате TIFF), да и размер папки для сжатия был меньше. Кроме того, измерялось не только время архивирования, но и время разархивирования. В новой редакции теста мы не измеряем время разархивирования.
Mathworks Matlab 2016a
Напомним, что вместо пакета GNU Octave мы решили использовать математическое приложение Mathworks Matlab 2016a.
В качестве тестовой нагрузки нами используется решение задачи о колебаниях прямоугольной мембраны с закрепленными краями. Этот пример был нами позаимствован из учебника по Matlab (Matlab самоучитель. Практический подход (2-е издание). Автор Васильев А. Н.).
Не вникая в постановку задачи и сложные математические выкладки, приведем лишь аналитическое решение данной задачи, которое представляется в виде бесконечного ряда:
Данная формула используется в скрипте Matlab для построения профиля поверхности мембраны в заданный момент времени. Точнее, рассчитывается профиль поверхности мембраны для конечного числа точек в заданном временном интервале с построением трехмерного изображения поверхности мембраны. Это делается для того, чтобы реализовать анимацию колебания мембраны.
Dassault SolidWorks 2016 SP0 с пакетом Flow Simulation
Как уже отмечалось, в тесте на основе приложения Dassault SolidWorks 2016 SP0 с установленным модулем Flow Simulation мы ничего не меняли, то есть в предыдущей версии нашего тестового пакета использовался тот же самый тест.
В данном тесте определяется скорость расчетов в задачах аэрогидродинамики и теплопередачи. В тесте используется тепловой расчет корпуса компьютера, в котором имеются тепловыделяющие элементы и один вентилятор. Этот проект входит в пакет SolidWorks Flow Simulation в качестве примера. Результатом теста является время расчета проекта.
Тестовый стенд и методика тестирования
Как и во всех предыдущих статьях данного цикла, мы опробовали новые тесты на неизменном по конфигурации тестовом стенде:
- Процессор: Intel Core i7-6950X (Broadwell-E);
- Системная плата: Asus Rampage V Edition 10 (Intel X99);
- Память: 4×4 ГБ DDR4-2400 (Kingston HyperX Predator HX424C12PBK4/16);
- Видеокарта: Nvidia Quadro 600;
- Накопитель: SSD Seagate ST480FN0021 (480 ГБ).
Рассматривалась зависимость результатов тестирования от количества используемых ядер процессора, от частоты ядер процессора и от частоты памяти.
Зависимость результатов от количества ядер процессора
Количество используемых в ходе тестирования ядер процессора Intel Core i7-6950X регулировалось через настройки UEFI BIOS платы Asus Rampage V Edition 10. Напомним, что процессор Intel Core i7-6950X является 10-ядерным, но поддерживает технологию Hyper-Threading, поэтому операционной системой и приложениями он видится как 20-ядерный (имеет 20 логических ядер).
Мы не отключали технологию Hyper-Threading и меняли лишь количество физических ядер процессор от 1 до 10. В дальнейшем мы будем говорить о логических ядрах процессора, количество которых менялось от 2 до 20 с шагом 2.
Частота работы всех ядер процессора фиксировалась и составляла 4,0 ГГц.
Результаты тестирования следующие:
Как видно по результатам, тест с использованием приложения FineReader демонстрирует почти классическую зависимость времени выполнения теста от количества ядер процессора: при увеличении числа логических ядер в 10 раз (от 2 до 20) время выполнения тестовой задачи сокращается в 9 раз.
Тесты на основе остальных приложений уже не столь чувствительны к количеству логических ядер процессора. В частности, в тесте на основе приложения Matlab увеличение числа логических ядер в 10 раз приводит к увеличению скорости выполнения теста в 6 раз, в тесте на основе приложения WinRAR скорость возрастает 4,5 раза, а в тесте на основе приложения SolidWorks скорость увеличивается только в 3 раза.
Зависимость результатов от частоты процессора
Частота ядер процессора Intel Core i7-6950X менялась в настройках UEFI BIOS платы Asus Rampage V Edition 10 путем изменения коэффициента умножения. Частота работы всех ядер фиксировалась (то есть режим Turbo Boost отключался). Использовались все ядра процессора (10 физических/20 логических). Частота менялась от 3,0 ГГц до 4,0 ГГц с шагом 200 МГц.
Результаты тестирования следующие:
Как видно по результатам, время выполнения тестовых задач меняется линейно в зависимости от частоты ядер процессора. Увеличение тактовой частоты процессора на 33% приводит к сокращению времени выполнения тестовых задач примерно на 8,5% в приложении WinRAR, на 16% в приложении SolidWorks и на 21% в приложении Matlab.
В приложении FineReader ситуация не столь однозначная. Все дело в том, что при частоте 4,0 ГГц (разгон Intel Core i7-6950X) процессор в этом тесте начинает перегреваться, и реальная частота процессора снижается до 3,6 ГГц. Если же не принимать в расчет частоту 4,0 ГГц, то увеличение тактовой частоты процессора на 27% (с 3,0 до 3,8 ГГц) приводит к сокращению времени выполнения тестовой задачи на 19%.
Зависимость результатов от частоты памяти
Теперь рассмотрим зависимость скорости выполнения тестовых задач от частоты работы памяти. Память DDR4 работала в четырехканальном режиме (по одному модулю на канал), а частота памяти менялась в настройках UEFI BIOS в диапазоне от 1600 МГц до 2800 МГц c шагом в 200 МГц. Тайминги памяти фиксировались и не менялись при изменении частоты. Все ядра процессора работали на частоте 4,0 ГГц.
Результаты тестирования следующие:
Как видим, для приложения Matlab скорость выполнения тестовой задачи довольно слабо зависит от частоты работы памяти. В данном случае увеличение частоты памяти на 75% (с 1600 до 2800 МГц) приводит к сокращению времени выполнения тестовой задачи всего на 5,3%.
Для приложения WinRAR увеличение частоты памяти на 75% приводит к сокращению времени выполнения тестовой задачи на 15%. А в тестах на основе приложений SolidWorks и FineReader аналогичное увеличение частоты памяти дает прирост в скорости выполнения тестовой задачи примерно на 12%.
Заключение
Данная статья является заключительной в цикле, посвященном различным реальным приложениям, которые могут использоваться для тестирования процессоров и которые в дальнейшем будут положены в основу нового тестового пакета iXBT Application Benchmark 2017. В этой статье рассмотрены приложения, которые нельзя отнести к одной логической группе, но они при этом достаточно распространены и известны: Abbyy FineReader 12, WinRAR 5.40, Mathworks Matlab 2016a и Dassault SolidWorks 2016 SP0 с пакетом Flow Simulation. Все эти приложения ориентированы именно на тестирование процессоров. В то же время, производительность ПК, ноутбуков, моноблоков и пр. определяется, конечно, не только процессором, поэтому мы планируем выпустить еще одну статью, в которой будут рассмотрены тесты, результаты которых определяются производительностью накопителя.
Как мы уже отмечали в самом начале статьи, в предыдущей версии нашего тестового пакета мы использовали такие приложения, как Adobe Illustrator и Adobe Audition, однако в новой версии мы их использовать не планируем. Дело в том, что тесты на базе данных приложений не являются многопоточными и не позволяют создать высокий уровень загрузки процессора. Никаких технических проблем с тем, чтобы добавить тесты на базе этих приложений в окончательную версию нашего тестового пакета, нет, но мы сомневаемся в том, что это нужно. Поэтому хотелось бы обсудить данный вопрос на форуме.