Буду краток, причина оказалась в непостоянстве частоты GPU (больше), и CPU(меньше). Используя MSI Afterburner, HWiNFO64, и RivaTuner экспериментальным путем я выяснил что пропуски кадров происходят из-за достижения powerlimit в gpu и pl4 limit в cpu. Лимиты есть и всегда будут. Даже если убрать лимиты для мощности и тока, упремся в температурный лимит, который ещё более наглый чем предыдущие, тк изменяет частоту более резкими скачками. Но есть решение. Прошу под кат.

Shuttering такого вида встречается даже на самых мощных компьютерах с 2080ti, 1080ti, и особенно в sli конфигурациях.

Я использую GPU GTX1070, CPU 6700K, экран 1080p@120hz, p750dm2 clevo (но скорее всего все нижесказанное будет относиться и к десктопам).

Мой девайс ноутбуком язык не поворачивается назвать из за десктопного процессора и соответствующего охлаждения.

Просто понизив частоту на где то 1-5% с прыгающих 1750-1680Mhz до стабильных во времени 1671Mhz с помощью функции curve в Afterburner, stuttering практически полностью исчез.
А после выключения turbo boost на 6700k(и фиксации частоты на 4Ghz) он исчез окончательно. При этом температура GPU упала с 88 до 73 градусов.
Далее я проводил тестирование с процессором на одной и той же частоте, 4Ghz. Эффект еще сильнее если учитывать эффект от отключения turbo boost.

Тестирование проводил в игре Rise of Tomb Raider тк у нее есть встроенный бенчмарк.
До:
image

После:
image

Результат бенчмарка:
До:
image

После:
image

Настройки графики средние:
image

image

Ну и самое главное, curve для моей видеокарты, с разгоном +148:
image

OSD я активировал в настройках MSI Afterburner Core clock, CPU clock, Power limit, и через плагин к HWiNFO64 использовал индикадоры throttling CPU:
image

Просто поиграв минут 15, определил минимальные частоты CPU и GPU после просадки из-за нагрева, и установил горизонтальную линию на 10 Mhz ниже. Power limit (и другие лимиты) должны быть всегда либо активны либо нет, а не дребезжать каждые несколько секунд.

Небольшое замечание, многие средства мониторинга, тот же task manager в Windows, и особенно HWiNFO64 очень хорошо видны на графиках, так что будьте внимательны, пропуски кадров через равные промежутки времени — это норма с этими программами на время тестирования. Я рекомендую установить интервал обновления графиков каждые 5 секунд.

Результат — падение производительности всего лишь на 0.14%(посчитал из общего количества кадров бенчмарка), повышение средрего fps(top 95%), и понижение температур GPU и CPU на 15 градусов при измерении на GPU ( тк радиатор у них общий) взамен на более плавный игровой процесс.

Итоги:
CPU full power, GPU full power — 88 C, 72 fps
CPU low power, GPU full power — 80 C, 72 fps
CPU low power, GPU low power — 73 C, 71 fps
Более подробно тестировать у меня к сожалению нет времени.

PS:
Насчёт CPU. Нужно не грубо отключать turbo boost, а с умом. До перехода на 4.0Ghz, я пробовал 4.4Ghz(overclock), 4.2Ghz, и 4.1Ghz. Они все без исключения не стабильны во времени, и производят просадки до 4.0Ghz. У вас может быть другая ситуация. Ещё от игры зависит, так что отключение turbo boost как универсальное решение не рекомендую, скорее ручной выбор максимальной стабильной во времени частоты.

Меня вдохновила на написание эта статья — habr.com/en/post/419043.

Если заметили ошибки, прошу писать в личку)
Если статья понравится, то переведу на english.

Комментарии (45)


  1. Revertis
    27.01.2019 10:44
    +5

    Если заметили ошибки, прошу писать в личку)
    Ошибок очень много, простой чеккер их бы показал.

    А за заметку спасибо, интересный аспект.


  1. nidalee
    27.01.2019 10:49
    +2

    Это вы еще undervolting не пробовали!
    Вам не нужно уменьшать частоту видеокарты (если только у вас не плохая СО (читай — турбина), или ограничены обороты кулера на видеокарте), вам нужно уменьшать напряжение. Нередко частоту можно еще и повысить, одновременно с этим.
    Что у вас за видеокарта? В смысле точная модель. Хорошие aftermarket видеокарты не греются и до 75 под полной нагрузкой, не то что до 85 (так вроде вообще только FE и другие blower-style умеют).
    В общем статью можно и нужно дополнять, сейчас в ней опыт очень субъективный, как и решение. В общем случае делают как по моей ссылке выше, но там тоже есть нюансы.


    1. dimonoid Автор
      27.01.2019 10:59

      Это ноутбук. Повысить частоту выше невозможно без модификации bios, тк стоит программное ограничение на потребление мощности. +148 Mhz это максимальный оверклок с даунволтингом, читайте как хотите. +152 — уже крашится. А обороты кулера я уже модифицировал, выставил на максимум через RLECViewer.


      1. nidalee
        27.01.2019 11:15

        С ноутбуками в принципе все плохо, их надо в первую очередь выбирать по СО, иначе можно купить какой-нибудь i9, который окажется медленнее i7. С видеокартами все еще хуже — отваливаются на раз-два.


        1. dimonoid Автор
          27.01.2019 20:58

          Попрошу не оскорблять, тут с системой охлаждения все нормально, тк не какой то i7, а 6700k, и следовательно к нему идут 3 тепловых трубки.

          Гик порно


          1. p_fox
            28.01.2019 09:07
            +4

            "ноутбук" и "с системой охлаждения все нормально" взаимоисключающие понятия.
            Нормальная система охлаждения в ноутбук не помещается физически.


            1. sensem
              28.01.2019 12:00

              Слишком сильно сказано. Выбирал ноутбук, во многом основываясь на наличии хорошей СО. В итоге остановился на MSI GT72VR 6RE — полёт нормальный, больше 80 градусов ни разу не было ни на процессоре, ни на видеокарте.


              1. DistortNeo
                28.01.2019 12:19
                -1

                Это все равно что сравнивать качество снимков со смартфона и с полноценного фотоаппарата. До определённого уровня условиях разницы нет. Но в сложных условиях смартфон очевидно проиграет.


            1. Atton
              28.01.2019 21:31

              Ой да вы что. Есть это ультра тонкая модель — то да плохо, а если это толстяк на подобии MSI TITAN (или ALIENWARE ), куда ставят еще 2 видеокарты в SLI — то там с охлаждением все очень хорошо.


              1. p_fox
                30.01.2019 10:59

                Это те самые ноутбуки, где проц и обе 1080 в нагрузке греются до 90 градусов, а турбина воет на 50 децибел?
                Да, все хорошо с охлаждением. Просто прекрасно.
                Это дураки какие-то ставят в системники огромные башни. Оказывается ноутбучного кулера достаточно.


                1. dimonoid Автор
                  30.01.2019 11:10

                  Достаточно наушников с шумоподавлением. Зато в рюкзак легко помещается. А системный блок с башней или водянкой дальше нескольких метров не отнести. У каждого свои требования. Я изначально хотел купить нормальный компьютер, но он мне не подходит просто из за размеров и нетранспортабельности.


                1. Atton
                  30.01.2019 11:23

                  Вы бы почитали спецификации например мобильных процессоров интел, в частности максимальные рабочие температуры.
                  Графика так не греется, отвод тепла нормальный.
                  Да и никто не мешает после покупки ноутбука заменить в нем штатную терможвачку на лучшую термопасту.
                  Ну а шум да, есть иногда такое неудобство (но и не 50 децибел). Нужно же чем-то платить за мобильность.


          1. nidalee
            28.01.2019 16:31

            Я никого не оскорблял, почему вы на свой счёт принимаете? Большая часть ноутбуков на рынке имеют неадекватную СО и троттлят.


    1. riky
      27.01.2019 11:15

      так у него андервольт и получился.
      номинал на такой карте 1,0В, насколько я понимаю. А у него судя по графику будет максимум 0,85В.
      у меня также стоит, тоже от температуры и скачков избавлялся.


      1. nidalee
        27.01.2019 11:20
        +1

        Ну это скорее банальная борьба с перегревом, для ПК это нецелесообразно, там нужен undervolting с той же или более высокой частотой. Так-то я тоже в свое время на ноутбуке множитель процессора уменьшал, чтобы он не троттлил.


        1. riky
          27.01.2019 11:25

          посмотрите скрин кривой. там есть линия призрак — это номинал. на 0,85 номинал 1550Mhz, а у него на этом напряжении будет работать почти на 1700.
          у меня gtx1080, на 0,85 у меня стоит 1770Mhz.


          1. nidalee
            27.01.2019 11:42

            Хорошо, разгона не заметил значит, тогда осталось немного сгладить кривую слева и все будет отлично.


          1. dimonoid Автор
            27.01.2019 11:48

            На линию — призрак попрошу не смотреть, она показывает предыдущее редактирование(?). А редактировал я уже много раз, так что не имеет смысла придавать ей значения.


            1. riky
              27.01.2019 11:55

              да, она как то странно работает. но плюс минус показывает номинал.
              в любом случае частоты выше номинала.


        1. dimonoid Автор
          27.01.2019 22:42

          Проблема была совершенно не с перегревом, так как от 88 до 91 градуса все еще есть небольшой зазор, а флаг перегрева за время тестирования ни разу не включился. Проблемой оказался лимит на мощность, который вызывает флуктуации частоты при любой(!) температуре при максимальной нагрузке(95-100%) на видеокарту.


    1. ChieF_Of_ReD
      28.01.2019 15:52

      А можно тоже самое, только развёрнуто, в статье, с принципами и проч, как свою «кофеварку» чуток пропатчить)


  1. KevLaRjkee
    27.01.2019 11:50
    +1

    Ниразу не думал, что постоянное измение частоты CPU и GPU можен негативно воздействовать на производительность. Проверю как обстоят дела с 1060.

    Есть над чем подумать.


    1. nidalee
      27.01.2019 11:52
      +3

      Может, но только если не хватает мощности системы охлаждения (при условии, что видеокарта исправна и нет никаких багов с бустами, впрочем, я таких не помню у 10 серии)


    1. AlexAV1000
      27.01.2019 13:18

      Видимо есть затраты времени, на переключения частоты взад-назад.


      1. dimonoid Автор
        27.01.2019 21:12

        Именно, само переключение частоты не происходит моментально, что то мне подсказывает что конвейер должен вначале очиститься, остановиться, и только потом запуститься на новой частоте. Я поискал, но на эту тему, но почти ничего не нашел.


  1. DistortNeo
    27.01.2019 13:05
    +1

    Автор зря не акцентировал внимание на то, что у него ноутбук. Производительность охлаждения ноутбука не может сравниться с производительностью охлаждения десктопа, поэтому температурные ограничения становятся критичными. И если в случае десктопа 80-90 градусов на видеокарте — норма, то для ноутбука это уже запредельные температуры.

    Но и в случае декстопа эти советы не лишены смысла. Например, фиксация частот процессора и фиксация напряжений повышает энергопотребление в простое, но снижает потребление при
    максимальных нагрузках.


    1. riky
      27.01.2019 13:53

      при данном способе оно не фиксируется. фактически ограничение только сверху. если нагрузка упала — то и частоты тоже сильно снизятся.
      лично я ограничиваю чтобы кулеры работали не на полную мощность (шум и износ) и темп-ра была невысокая.


    1. dimonoid Автор
      27.01.2019 20:39

      Наоборот, ноутбуки, по крайней мере игровые, часто имеют значительно более высокие температуры из за практически той же мощности компонентов и худшего охлаждения. Они сделаны работать при 80-90 градусов. Я забыл упомянуть что температура воздуха при тестировании была около 20 градусов(холодно), а термопаста — thermal grizzly kryonaut. Так что на полностью заводских настройках и со штатной термопастой ноутбук выдавал ещё большие температуры, нередко достигая 91 градуса.


      1. DistortNeo
        27.01.2019 20:53

        Побочный эффект — об него можно обжечься.


    1. HiroX
      27.01.2019 23:55

      Скорее наоборот, ноутбуки/win-планшеты рассчитаны на более высокие температуры.
      У мобильного Core m3 7y30 критическая температура по умолчанию аж 115 *C, и то при ее достижении следует acpi-просьба ОС завершить работу, а не жесткое отключение.
      В то же время у десктопных интел этот же параметр равняется 100 *С (i7 7700), а у старых и того меньше.


      1. dimonoid Автор
        28.01.2019 00:23

        Он у вас какой то неправильно настроенный производителем. Тут написано что T-junction 100 градусов ark.intel.com/products/95449/Intel-Core-m3-7Y30-Processor-4M-Cache-2-60-GHz-?q=m3-7Y30
        Возможно производитель желает процессору долгой жизни, что бы больше ноутбуков продать.


  1. mukolah
    27.01.2019 20:09
    +1

    TL;DR Я понизил частоту видеокарты на 70Mhz, тем самым понизив ее темпаратуру и отключил Turbo Boost для CPU в последствии чего пропали следы троттлинга.

    Просто понизив частоту на где то 1-5% с прыгающих 1750-1680Mhz до стабильных во времени 1671Mhz.

    Понижение частоты на ~50Mhz это в % соотношении может мало, но абсолютно не правильно мерять частоту в % так как чем выше пойдет частота в соотношении с базовой частотой чипа, тем больше будет использовать Ватт видеокарта, причем не пропорционально «частота = Ватт», если на частоте в 1671Mhz видеокарта использовала допустим 100 Ватт, то на 1750Mhz она может использовать все 150 Ватт, при этом выходит разница в частоте пару процент а в потреблении питания в половину, именно то сколько тянет как видеокарта так и процессор питания будет показывать общую картину темпаратуры. Поэтому следить нужно и дополнительно график Gpu power, если таковый имеется. Максимальная температура для GTX1070 по спецификации Nvidia: 94 градусса, и это не значит что она начнет себя троттлить после достижения этой температуры, это значит что она будет делать все — чтобы до этой темпаратуры не дойти, и чем ближе будет к 94 градуссам тем сильнее будет троттлинг. Со стороны CPU я бы посоветовал всем пользователям ноутбуков которым не надо такую «турбо» мощность — отключать Turbo Boost. Для этого не обязательно заходить в биос и что то там искать, достаточно просто использовать штатные средста виндовс — «Управление электропитанием», где можно указать «максимальное состояние процессора». Там нужно всего лишь поставить лимит ниже 90% (возможно меньше, тестируйте.). Часто в ноутбуках используется общая система охлаждения для CPU и GPU, поэтому нагрев одного компонента может негативно влиять на темпаратуры другого. Берегите свои кристалы, не давайте им перегреватся и все будет хорошо!


    1. dimonoid Автор
      27.01.2019 20:24

      Базовая мощность ноутбучной gtx 1070 120-130 Ватт, после понижения частоты мощность стала около 110-90 Ватт, действительно это очень похоже на Max-Q который Nvidia постоянно рекламирует. График GPU power не очень красивый, там мало чего вообще можно понять, тк он слишком пушистый)
      Для мобильной видеокарты температурное ограничение строго 91 градус, троттлит моментально при переходе от 91 до 92, так что частота может тут же упасть ниже 1Ghz, поэтому гнать так сильно не имеет смысла.


  1. Pelemeshka
    27.01.2019 20:10

    Отключил turbo boost на ноуте (i7-8750H + gtx1060) через стандартные настройки электропитания — управление питанием процессора — максимальное состояние процессора (поставил 99%), и теперь ноут в большинстве игр не греется выше 60 градусов (73 градуса ведьмак 3 на максималках), а до этого температура поднималась до 90… Вот такой вот горячий turbo boost нынче.


    1. iproger
      28.01.2019 00:30

      Т.е. сидите на частоте 3ггц? Ну такое, мне, например, уже и 5ггц мало, хотелось бы 5,4+.


      1. dimonoid Автор
        28.01.2019 00:45

        Нужно не грубо отключать turbo boost, а с умом. До перехода на 4.0Ghz, я пробовал 4.4Ghz(overclock), 4.2Ghz, и 4.1Ghz. Они все без исключения не стабильны во времени, и производят просадки до 4.0Ghz. У вас может быть другая ситуация. Ещё от игры зависит, так что отключение turbo boost как универсальное решение не рекомендую, скорее ручной выбор максимальной стабильной частоты.


        1. iproger
          28.01.2019 01:20
          +1

          Не, у меня турбобуст отключен, но немного по другой причине: 8700k на 5ггц по всем ядрам с башней noctua d15))
          Не понимаю чего народ так стал брать «игровые» ноуты если они могут давать разве что половину от максимума.


        1. Pelemeshka
          28.01.2019 04:49

          Со включенным turbo boost в играх показывает что видеокарта загружена на 80 — 100% а процессор на 30 — 40%, зачем он при этом повышает частоты, если такой запас вроде как есть, непонятно. А если выключить turbo boost то загрузка проца повышается до 70 — 80%, производительность в играх не падает, но греется значительно меньше. Сдается мне что процессор i7-8750H больше подходит в пару к карте 1070 по мощности, но зато с 1060 можно ограничить производительность и получить меньшее тепловыделение.


      1. Pelemeshka
        28.01.2019 06:49

        Получается сижу на частотах не выше 2,2Ггц (в turbo boost прыгает до 4,1Ггц intel ark), но этих частот вполне хватает для всех игр с избытком. Может потому что ядер 6 штук, а может потому что поколение 8-ое, или и то и другое.


        1. iproger
          28.01.2019 19:18

          Понятно. Я бы не сидел на таком. Вы просто не замечаете медленность компа, а в играх не замечаете время кадра и другие значения.


          1. Pelemeshka
            28.01.2019 21:20

            А что я могу заметить при фпс 60+?


            1. dimonoid Автор
              28.01.2019 21:26

              Спорный вопрос. Плавность зависит от игр в которые вы играете, и мало зависит от fps. Ещё от блюра/настроек графики. Многие кстати совершенно недооценивают блюр как улучшайзер плавности. Играть можно в принципе на любом железе если правильно все настроить.


              1. Pelemeshka
                28.01.2019 21:48

                В общем, дискомфорта никакого не испытываю, все идет плавно. С другой стороны я не ставлю все на максимум — есть эффекты типа размытия, которые мне просто не нравятся. Я все это к тому что есть довольно простая настройка, которая позволяет снизить температуру ноута под нагрузкой в ситуации когда мощности процессора хватает с запасом. Если вы опасаетесь что это может привести к дискомфорту, то в моем случае пока не привело, только лучше стало т.к. система охлаждения теперь работает гораздо тише.


    1. DistortNeo
      28.01.2019 10:13
      +1

      Потому что Turbo Boost — это автоматический разгон. А автоматический разгон плох тем, что помимо роста частоты (линейная зависимость энергопотребления) ещё задирается и вольтаж (квадратичная зависимость), причём задирается с огромным запасом.

      А можно, выставляя фиксированные частоту и напряжение, экспериментально определить оптимальный режим работы процессора.


  1. LESHIY_ODESSA
    29.01.2019 17:53

    НА этой неделе, ребята с канала CORE посоветовали хорошую статью —
    GeForce GTX 1060 — Унылый разгон и дикий undervolting.