Про компьютеры
Есть вот такое мнение, что "компьютеры перестали становиться быстрее". Пару лет назад я его даже развеивал на хайлоаде, но в докладе упирал на SSE/AVX/итп.
Но тут понадобилось попрофайлить кой-чего на Core2 (у котогого aligned/unaligned access резко отличаются). Достал с полки старый свой макбук, 2007-го года, Core2 Duo, ~2.2гигагерца (могу ошибаться, по памяти пишу). Надо теперь собрать Qt. Вот Qt 5.3.2 собиралося у меня почти 7 часов (400 с чем-то минут по time), на двух ядрах.
Ну ладно, думаю, у этого ноутбука была тяжелая судьба, я ему всю систему охлаждения перебирал т.к. он throttle-лся (термопаста повысохла), может опять болеет.
Отобрал у жены ноут. Celeron T3100, то же поколение Сore2, 1.9гигагерца, винды. Вот 2010-я студия собирает, 5 часов уже прошло, до QtDeclarative добрались. Значит еще не меньше часа.
Для сравнения, i7-4770 собирает тот же Qt 5.3, судя по датам создания файлов, 36 минут. В 10 раз быстрее. Да, вдвое больше ядер, ~вдвое больше частота, но еще 2.5 раза просто от большей лучшести.
Это вот я к тому, что те кто гордо не апгрейдит свои Q6600, они на самом деле заметно отстали от.
Comments
Тоже заметил большой скачок
Тоже заметил большой скачок производительности, заменив в свое время C2D на Core i5 2-го поколения. Разница между 2-м, 3-м и 4-м поколением уже не такая глобальная, на мой взгляд. Если при переходе на Core i5 выигрыш был в несколько раз и видим невооруженным взглядом (грубо говоря - конвертация RAW 18 Мпикс на i5 была чуть ли не быстрее 8 Мпикс на С2D похожей частоты, что дает как раз ~2.5 раза), то игрища со следующими i5/i7 такого прихода не дали.
Вот-вот.
Вот-вот.
И вот материалистическое объяснение: если код написан левой ногой, за выравниванием (больших данных) не следили, то Core2 сильно проигрывает всем i5/i7 по unaligned access. В разы.
> Разница между 2-м, 3-м и 4
> Разница между 2-м, 3-м и 4-м поколением уже не такая глобальная, на мой взгляд
Core i7 2360QM 2Ghz почти ровно в два раза медленнее, чем Core i7 4750QM 2Ghz.
Это мой старый и новый ноуты.
А на какой задаче (или "по
А на какой задаче (или "по каким тестам") разница получается в два раза?
То есть вот я знаю, где так может быть (при условии наличия нужного кода в программе): AVX2 может быть *сильно* быстрее чем SSE4.2 просто за счет вдвое большей длины вектора в этих инструкциях (ну и плюс там есть всякое).
Ну вот еще на кэши налетал, да в Haswell гистограмма быстрее считается (но не в 2 раза, а скорее в 1.5-1.6).
Кодек видео в Haswell скорее всего сильно быстрее. Видео - ну тем более, в основном в видео и вкладывался Intel
Но интересно услышать еще примеров.
Никаких AVX, Supper MMX и
Никаких AVX, Supper MMX и прочего. Обычная компиляция, питоновский пистон (http://zentraal.com/docs/benchmarking-machine-performance-with-pystone/). Кроме добавления новых инструкций еще и ускоряют старые. Плюс кокретно на 4750 те 128Mb видеопамяти, которая стоит на одной подложке с чипом, используется как кеш 4го уровня.
Для сборки узкими местами
Для сборки узкими местами всегда были память и диск, большая часть разницы легко может оказаться от большого кэша и SSD. Кэш - это большая лучшесть процессора, но не навсех задачах он так сильно проявляется.
Ну вот диск то с чего? Тот Qt
Ну вот диск то с чего? Тот Qt целиком в дисковый кэш влазит.
То есть я делал эксперименты, собирал FreeBSD с HDD и SSD. На SSD - быстрее, но не в разы.
Узкое место для C++ - процессор (и память, наверное)
На практике не так. При
На практике не так. При прочих равных 2x ядер дает больше прироста чем HDD -> SSD.
Да, поправка - не только 2x
Да, поправка - не только 2x ядер, но и 2x частоты.
На мелком софте при этом может упираться в I/O, но не забываем, что всякие оптимизаторы - довольно жручи.
Каждое поколение процессоров
Каждое поколение процессоров на 5-7% быстрее предыдущего, редко больше (не считая SSE/AVX). Поэтому все и говорят что "перестали становиться быстрее" - плюс ко всему эта оценка субъективная - т.е. "винда как грузилась минуту, так и грузится а я процессор поставил новый! Компы перестали становиться быстрее!!!". Иногда еще бывают чуть более серьезные изменения. Поэтому выходит, что современные Core i3 зачастую быстрее чем тот же Q6600.
Ну вот 4 поколения (ну или 5,
Ну вот 4 поколения (ну или 5, считая C2Q отдельным) - разница на практической задаче в 10 раз.
Сам удивился.
Ну в 10 раз - это еще и
Ну в 10 раз - это еще и колличество ядер сыграло роль, но там было три мажорных обновления - первые core i, sandy bridge и haswell - из них только последний дал не очень значительный прирост скорости.
Ну и новые инструкции - компиляторы их тоже могут использовать же :)
Между SB и Haswell был еще
Между SB и Haswell был еще Ivy Bridge. Но его в руках не держал.
Между SB и Haswell - офигенный прирост. Вот цитата из меня же:
blog.lexa.ru/2013/07/01/o_benchmarkakh.html
UPD: я перестал понимать. Сначала вы пишете "поколение - 5-7%". Потом - "только последний шаг не дал большого прироста".
[quote]Между SB и Haswell -
[quote]Между SB и Haswell - офигенный прирост[/quote]
В некоторых задачах - да, в среднем - не очень. Между Westmere и Sandy Bridge был больше, чем между Ivy и Haswell. За это последний обычные люди поругивали какое-то время.
[quote]Сначала вы пишете "поколение - 5-7%". Потом - "только последний шаг не дал большого прироста".[/quote]
В среднем одно поколение дает прирост 5-7% (и в среднем по задачам, в том числе) - конкретно Sandy Bridge -> Ivy Bridge был около 5% прироста, Ivy -> Haswell - тоже как-то также. Были исключения в виде Westmere (core i первого поколения) -> Sandy Bridge (core i второго поколения) где прирост был больше (и само обновление было заявлено как более существенное), но тоже кроме специфических задач прироста в 2 раза там быть не должно.
На обработке RAW'ов будет больше чем в среднем, но про "полтора раза" я честно говоря не верю, если каким-то образом не используется OpenCL или AVX2 в Haswell'е. В 15-20 можно поверить еще.
Критическое место в обработке
Критическое место в обработке raw - подсчет гистограммы.
А гистограмма от перехода SB-Haswell ускорилась больше чем в полтора раза. Кэши сильно лучше.
с точки зрения будничного веб
с точки зрения будничного веб-серфинга это не железо виновато - 2 года назад мой i5 3450S уверенно открывал Хром с 20 активными вкладками, сегодня он уже грузит систему на 100% и не вполне справляется
Ну и это тоже, вне всякого
Ну и это тоже, вне всякого сомнения.
Но я сравнивал даже не просто сравнимое, а вот ровно одно и то же: одни исходники, один компилятор, одна версия винды.
Скорее всего это флешреклама
Скорее всего это флешреклама без flashblock грузит процессор.
C2D уже более 5 лет. Как
C2D уже более 5 лет. Как попадает в руки T60/T61/T500 - хочется его об стену.
Ну, T3100 и Q6600, всё же,
Ну, T3100 и Q6600, всё же, сильно отличаются. Особенно по объёму кэша (в 8 раз). Так что, на компиляции с 4770 у 6600 будет разница не более, чем в 2—3 раза, скорее всего. Что выглядит уже не так фатально.
На макбуке у меня T7500. Кэша
На макбуке у меня T7500. Кэша 4, клок 2.2.
Надо смотреть еще на memory bw, но вот сдается мне, что "на ядро" там не меньше чем у Q6600 получится даже с учетом ноутбучной памяти (лень сейчас развинчивать чтобы посмотреть, но по-моему там не 1600-я, а скорее 1333).
То есть относительно Q6600 я бы ожидал разницы раза в два или даже меньше. Но сравнить не с чем, я даже i7 первого поколения изжил, самое старое что есть под рукой десктопное i7-2600 и пара i3 того же поколения.
Да, переход и с c2Q на i7(-920 в моем случае) и с i7-920 на i7-2600 и с i7-2600 на i7-4770 - каждый раз давал приросты не "5-7%", а "десятки процентов" как минимум. Потому что на самом деле еще же и memory bw очень сильно прирастает каждый раз.
Так это же сравнение
Так это же сравнение процессора ноутбука и десктопа. Я уверен что и современный ноутбук проиграет в два раза минимум. Ну "М" точно, "U" и подавно, всякие "QM" не знаю — в руках не держал, но думаю в полтора.
А я вот не уверен что "в два
А я вот не уверен что "в два раза минимум", если имеются в виду "на одинаковой частоте".
Ну то есть вот надо собраться с духом и собрать тот же Qt 5.3 на свежем (годовалом) макбуке про. Под виндой, к примеру. Т.е. он медленнее моего десктопа, но по ощущениям - вот пропорционально частоте, не более.
Да, поправку на частоту
Да, поправку на частоту упустил, действительно.
Что получится с mbp интересно, пишиште как проведете тест.
Да, я уже загорелся, поэтому
Да, я уже загорелся, поэтому как руки дойдут.
Но мне, блин, нужен для работы C2D, потому что юзеры со старыми машинами местами плакают. А на HDD работать не могу, отвык.
Поэтому все постепенно, сначала SSD-шку в старый ноут и тайминги уже по взрослому, с не по датам файлов, дальше сравним с новым, с i7-2600, ну и с десктопом.
Ну тепло хоть в комнате стало
Ну тепло хоть в комнате стало-то? Пропотели, веничек берёзовый и вот это всё что идёт в боксе с core?
Разве ноутбучный процессор
Разве ноутбучный процессор может согреть нормально?
Ну и вообще, 130 ватт было у первых i7, в сравнении с ними core2 - еле греют.