То, как делает отключение базового выполнения влияния, обрабатывает?

Нет кнопочного элемента. Элемент, прослушивающий событие щелчка пользователя, на самом деле является скрытым вводом:

<li class="Selection reg">
  <!-- this input -->
  <input choiceid="1" aria-labelledby="QID2-1-label" class="radio QR-QID2-1 QWatchTimer" type="radio" name="QR~QID2" id="QR~QID2~1" value="1" data-runtime-checked="runtime.Selected">

  <!-- not these elements -->
  <label for="QR~QID2~1" class="q-radio q-checked" aria-hidden="true" data-runtime-class-q-checked="runtime.Choices.1.Selected"></label>  <span class="LabelWrapper"> 
  <label for="QR~QID2~1" id="QID2-1-label" class="SingleAnswer  q-checked" data-runtime-class-q-checked="runtime.Choices.1.Selected"><span>Male</span></label></span> <div class="clear"></div>
</li>

Таким образом, вам нужно вызвать метод click элемента input для его запуска. Например, вы можете сделать:

var labels = document.getElementsByTagName('label');

for (var i = 0; i < labels.length; ++i) { 
    if (labels[i].textContent == "Male") { 
        labels[i].parentElement.parentElement.firstElementChild.click()
    }
}
9
задан epochwolf 20 November 2008 в 20:16
поделиться

5 ответов

Как делает отключение влияния ядра рабочие процессы?

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

Как делает отключение базового ресурса аккумулятора влияния

Это будет иметь измеримое, но не значительный эффект - в некоторых случаях это увеличится. Другими словами, Вы не должны видеть больше, чем, возможно, 5%-е уменьшение в энергетическом использовании, поскольку современные процессоры уже используют агрессивные методы экономии электроэнергии. Процессоры не выполняют неактивные циклы - они останавливаются, когда нет никакого процесса, готового работать. Если полная системная нагрузка является низкой, ОС замедляет процессоры вместо того, чтобы остановить их, который имеет подобный сберегательный эффект.

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

Как делает отключение базового тепловыделения влияния

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

Как делает отключение базового выполнения влияния (предполагающий, что процессор использует меньше чем 40% из обоих ядер),

Процессы являются очень 'остроконечными'. Когда Вы нажимаете клавишу или перемещаете мышь, она начинает десятки ожидающих процессов и хочет 100% в течение очень короткого промежутка времени.

Вынуждая процессор выполнить их по одному вместо параллели, да полное среднее использование составляет только 80%, но это будет чувствовать себя отстающим не только из-за большого количества ожидающих процессов, но также и из-за переключения задач - каждый раз, когда процесс изменяется (из-за приоритета, или этого заканчиваемый или прерывания, и т.д.), процессор загружает задачу ОС, которая затем выполняет планировщик, который затем загружает следующую задачу.

Вы удваиваете нагрузку переключения задач на один процессор, что означает, что Вы выполняете код ОС (планировщик, менеджер событий, и т.д.) намного более часто, чтобы не отставать от спроса.

Это расточительно, и снижение производительности может на самом деле быть примечательным. Эта дополнительная работа должна была бы не обязательно быть выполнена, если бы ОС имела опцию выполнения обоих процессоров в 40% их нормальной скорости, например.

- Adam

5
ответ дан 4 December 2019 в 21:13
поделиться

Я предположу, что, когда Вы "отключаете" ядро, Вы действительно говорите OS X больше не обрабатывать параллельно.

Я также предположил бы, что ОС достаточно умна для перемещения процессов после отключения их :)

Я не думаю, однако, Вы действительно видели бы огромное улучшение на потребляемой мощности или ресурс аккумулятора, но это - предположение - ЦП все еще получает питание, просто к части его не получают доступ.

Кроме того, и это - просто теоретический вопрос, не мог бы выполнение только одного Ядра увеличивать вероятность сжигающего ЦП, если заботу не соблюдают для хранения тепловых свойств постоянными? Просто мысль.

1
ответ дан 4 December 2019 в 21:13
поделиться

Интересный вопрос. Это несколько принимает участие. Вы не были супер конкретны относительно точно, что Вы подразумеваете "под приложением, которое отключает ядро" и точно что оно делает, но я предполагаю от Вашего вопроса и комментария к другому, что это приложение отключает ядро в ядре ОС дружественный путь.

Так, обычно когда OS X работает, существует много различных возможных потоков/процессов (я скажу, что потоки отсюда на), которые конкурируют за ресурсы ЦП в планировщике. Когда оба ядра Вашего процессора Core 2 Duo включены, ядро имеет способность выполнить два потока одновременно - поворачивающий оба ядра через все, что должно работать. При отключении одного из ядер ядро собирается ронять только к диспетчеризации работы к одноядерному. Конечно, это не изменяет объем работы, который должен быть сделан...., он просто сокращает Ваше потенциальное выполнение выполнения в половине.

Вы не могли бы думать, что это имеет значение, составляли ли Ваши ядра в среднем занятых меньше чем 50%, правильно? Ну, это действительно имеет значение при многих обстоятельствах, и причиной является задержка для выполнения материала. Если существует, только один распараллеливает выполнимый в любое время, то второе ядро всегда бесполезно, даже если оно все еще включило. Однако в любой ситуации, где два или больше потока становятся выполнимыми...., возможно использовать в своих интересах оба ядра и если один из них отключен затем, работа, которая будет сделана на втором потоке, не может даже запуститься, пока предыдущее сообщение не выполняется некоторое время и затем выгружается. Принятие двух потоков с равным трудом, который будет сделан, ясно это собирается взять дважды, как очень хотят, чтобы второй поток добрался до завершения по сравнению с двухъядерным случаем. Вы не можете заметить это, завися, о каком количестве работы мы говорим здесь, но ясно задержка (скорость отклика), по крайней мере, в теории будет включенной половиной. Очевидно, как системные нагрузки со все большим количеством потоков, которые должны работать или потоки, которые имеют больше работы, чтобы сделать, будет прогрессивно становиться более очевидно, что все работает - в действительности - на половине скорости.

Это было все довольно прямым.

Таким образом, что это означает относительно рассеяния тепла и ресурс аккумулятора?

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

Заключение здесь состоит в том, что отключение ядра, в конце, будет иметь очень мало, если любое влияние на полный ресурс аккумулятора, потому что ОС и ЦП уже сотрудничают, чтобы возвратить часы к исходному состоянию и эффективно завершить работу ядра, которое не нужно. Таким образом, нет действительно мало ни к каким издержкам в наличии ядра в ожидающем готовом, которое будет использоваться, когда Вам нужно оно. На самом деле система могла бы на самом деле иметь более короткий ресурс аккумулятора только с одним ядром, используется, потому что все другие устройства на материнской плате должны оставаться активны дольше, поскольку ЦП занимает больше времени, чтобы сделать необходимую работу.

Относительно рассеяния тепла эффект подобен. Очевидно, пиковое рассеяние тепла с точки зрения ВАТТ существенно сокращено только с одним ядром...., потому что только одно из двух ядер на самом деле активно. Однако снова то ядро будет работать дольше, и энергетический вывод чистого итога (ДЖОУЛИ или СЕКУНДЫ ВАТТА) будет приблизительно тем же..., которое является снова, почему Ваш ресурс аккумулятора в основном незатронут в одном ядре по сравнению с двумя базовыми случаями.

3
ответ дан 4 December 2019 в 21:13
поделиться

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

  1. батарея: крайний
  2. разность тепла: незначительный... с 2x40%-загрузка
  3. не существующий или немного хуже
    • хуже, потому что теперь все процессы должны быть переключены по тому и только ядру
    • перед одним процессом (и его контекст!), возможно, остался все время на одном ядре
    • таким образом, это добавит ввод-вывод..., и Ваше единственное ядро должно ожидать его (сбрасывание TLB и таблицы страниц)
1
ответ дан 4 December 2019 в 21:13
поделиться

Я не знаю о потребляемой мощности, но я ожидаю, что Вы сохранили бы некоторое поле. Это зависит от процента питания, используемого в MBP ЦП.

Что касается влияния на необработанную вычислительную мощность, это зависит от природы приложений, которые Вы запускаете. Большинство приложений не разработано для использования нескольких ядер, хотя большая часть верхнего края приложения. Так, при использовании Photoshop или программного обеспечения редактирования видео затем, Вы заметите значительное сокращение пиковой производительности случаев, где узким местом производительности является ЦП (и не сеть IO или диск IO).

0
ответ дан 4 December 2019 в 21:13
поделиться
Другие вопросы по тегам:

Похожие вопросы: