Обработка звука в режиме реального времени это сложная задача для компьютеров общего назначения, которые обычно предназначены для работы с электронными таблицами и выхода в интернет. Live требует мощный процессор и быстрый жёсткий диск. В этом разделе будут даны некоторое представление по этим вопросам, и это должно помочь вам избежать и решить проблемы связанные с запуском звука на компьютере.
Управление загрузкой процессора
Для вывода непрерывного звукового потока через звуковое оборудование, Live каждую секунду приходится выполнять огромное количество расчётов. Если процессор не справляется с тем, что должно быть рассчитано, звук будет иметь пробелы или щелчки. Факторы, влияющие на скорость вычислений включают в себя тактовую частоту процессора (например, скорость в МГц или ГГц), архитектуру, производительность кэш-памяти (насколько эффективно процессор может получать данные из памяти) и пропускную способность системной шины — компьютерного трубопровода — через которую должны пройти все данные. По этой причине многие люди используют Pro Audio компьютеры, которые оптимизированы для музыкальных программ.
Как включить все ядра на компе
К счастью, Live поддерживает многоядерные и многопроцессорные системы, что позволяет распределить вычислительную нагрузку от инструментов, эффектов и входов/выходов, среди имеющихся ресурсов. В зависимости от машины и Live сета, имеющиеся вычислительная мощность может быть в несколько раз больше, чем на старых системах.
Если вы работаете в многоядерной или многопроцессорной системе, вам надо включить поддержку во вкладке CPU в настрйках Live.
Измеритель нагрузки на процессор
Измеритель нагрузки на процессор в панели управления показывает, какой вычислительный потенциал компьютера используется в настоящее время. Например, если отображается 10 процентов, то компьютер просто идёт по инерции. Если 100 процентов, то в настоящее время нагрузка превышена — вполне вероятно, что вы услышите щелчки или другие проблемы со звуком. Обратите внимание, что измеритель нагрузки на процессор учитывает только нагрузку от обрабатываемого звука, и не учитывает другие задачи выполняемые компьютером (например, управление пользовательским интерфейсом Live).
В Live расчёты звука имеют наивысший приоритет. Поэтому, даже если измеритель показывает высокий процент загруженности процессора, звуковой поток должен оставаться непрерывным. Тем не менее, некритические функций (такие как перерисовывание экрана) могут замедлиться, потому как эти задачи решаются только тогда, когда обработка звука освободит немного ресурсов.
Нагрузка процессора при многоканальном звуке
Один из источников постоянного истощения, это процесс перемещения данных в и из звукового оборудования. Эти истощения могут быть сведены к минимуму, отключив все входы и выходы, которые не требуются в проекте. В настройках Audio для доступа к диалоговым окнам конфигураций входов и выходов есть две кнопки, которые позволяют включать и выключать отдельные входы и выходы.
Как включить все ядра на Windows и узнать их количество в процессоре компьютера
Live автоматически не отключает неиспользуемые каналы, потому как когда происходят изменения звуковых конфигураций, аппаратные звуковые драйвера обычно производят слышимые «заикания».
Нагрузка процессора от треков и устройств
Как правило каждый трек и устройство используемое в Live, берёт на себя некоторое количество нагрузки на процессор. Однако Live «умный» и избегает траты ресурсов процессора на треки и устройства, которые не вносят ничего полезного.
Например, перетаскивание устройств в Live сет который не воспроизводится, существенно не увеличит нагрузку на процессор. Нагрузка увеличивается только если вы начнёте воспроизводить клипы или подавать звук на эффекты. При отсутствии входящего звука, эффекты отключаются, пока они не понадобятся снова. (Если эффект производит «хвост», например реверберация и дилэй, отключение происходит только после выполнения полностью всех расчётов).
Хотя эта схема очень эффективна при снижении средней нагрузки на процессор Live сетом, она не может уменьшить пиковую нагрузку. Чтобы убедиться, что ваш Live сет воспроизводятся непрерывно, даже в самых напряжённых условиях, воспроизведите клипы каждого трека одновременно со всеми поддерживающимися устройствами.
В окне сессии можно увидеть влияние каждого трека на загрузку ЦП, щелкнув по переключателю Show/Hide Performance Impact (показать/скрыть влияние на производительность) в разделе «Микшер».
Переключатель показать/скрыть влияние на производительность
В разделе «Влияние на производительность» каждый трек имеет свой собственный счётчик ЦП с шестью прямоугольниками, которые загораются, чтобы указать относительное влияние этого трека на уровень нагрузки на ЦП в текущем сете. Замораживание трека (см. ниже) с наибольшим влиянием или удаление устройств с этого трека обычно снижает нагрузку на ЦП.
Раздел «Влияние на производительность» в окне сессии
Заморозка треков
Команда Freeze Track (заморозить трек) может очень помочь в управлении нагрузкой на процессор, которую оказывают устройства и настройки клипов на треке. При выборе трека и выполнении команды Freeze Track, для каждого клипа сессии в треке Live создаст файлы сэмплов, плюс один для аранжировки. После этого, клипы находящиеся в треке будут просто воспроизводить свои «замороженные» файлы, не производя в реальном времени многократные расчёты от устройств и настроек клипов. Команда Freeze Track доступна из меню Edit, а также из контекстного меню треков и клипов вызываемого нажатием по ним (правой кнопкой мыши (PC)/Ctrl+левая кнопка мыши (Mac). Имейте в виду, что невозможно заморозить группу треков, вы можете замораживать только те треки которые содержат клипы.
Как правило, заморозка происходит очень быстро. Но если вы замораживаете трек, который содержит внешние звуковые эффекты или внешний инструмент, который направляется на аппаратное устройство эффектов или синтезатор, процесс заморозки происходит в режиме реального времени. Live автоматически определит, необходим ли при заморозке режим реального времени, и вам будет представлено несколько возможностей для управления процессом. Для получения информации об этих вариантах, пожалуйста посмотрите раздел рендеринга в реальном времени.
После того как возможности компьютера были расширены (или вы сменили ваш ПК!), вы всегда можете выбрать замороженный трек и выбрать команду Unfreeze Track (разморозить трек) из меню Edit, чтобы после этого изменить устройства или настройки клипа. На более медленных машинах, вы можете по одному размораживать треки и вносить изменения, после чего когда вы всё сделаете замораживать их снова.
Для треков которые заморожены остаются доступными многие функции редактирования. Всё ещё может свободно производить запуск клипов, и по-прежнему доступны такие параметры микшера как громкость, панорама и посылы. Другие возможности включают в себя:
- Редактирование, вырезание, копирование, вставку, дублирование и нарезку клипов.
- Рисование и редактирование автоматизаций микшера и огибающих микшера в клипе.
- Объединение.
- Запись запускаемых клипов окна сессии в окно аранжировки.
- Создание, перемещение и дублирование сцен окна сессии.
- Перетаскивание замороженных MIDI клипов в аудио треки.
При выполнении изменений в замороженных треках, которые содержат эффекты основанные на времени, такие как реверберация, следует иметь в виду, что в зависимости от ситуации звуковой результат на вновь размороженных треках может быть другим. Это происходит потому, что если трек заморожен, применённые эффекты вновь не рассчитываются, и следовательно они не могут повторно изменять свою реакцию на отредактированный исходный материал. Когда трек снова размораживается, все эффекты будут перерасчитаны в реальном времени.
Замороженный трек аранжировки с хвостом реверберации
Замороженный трек окна аранжировки будет воспроизводить любой выходящий за длину его клипов материал, имеющий к ним отношение (например, «хвосты» эффектов реверберации). Эти замороженные хвосты появятся в аранжировке, как заштрихованной области, расположенные рядом с соответствующими клипами. Они создаются Live как отдельные, «временные» клипы, которые исчезают, когда трек размораживается, поскольку эффект рассчитывается в режиме реального времени. Таким образом, при перемещении замороженных клипов в аранжировке, вы как правило должны выбрать вторую часть, это замороженный хвост этого клипа, так чтобы они оставались вместе.
Для замороженных клипов сессии, в замороженный клип лупа включается только два цикла, это означает, что клипы с несвязанными огибающими клипа, когда они будут заморожены после двух циклов могут воспроизводиться не так.
Перетаскивание замороженного клипа в область перетаскивания в окне сессии или аранжировки создаст новый замороженный трек, содержащую этот клип. Если клип в аранжировке выделен частично, новый замороженный трек будет содержать только выбранную часть клипа.
Сэмплы созданные командой Freeze Track, пока вы не сохраните Live сет, хранятся в вашей временной папке для записи, после чего они перемещаются в следующую подпапку папки проекта: Samples/Processed/Freeze. Обратите внимание, что замороженные файлы треков, которые содержат внешний инструмент или внешние звуковые эффекты будут отброшены сразу же после разморозки.
Вы также можете Flatten (сгладить) замороженные треки, эта команда полностью заменяет оригинальные клипы и устройства их звуковым результатом. Команда Flatten доступна из меню Edit.
Помимо предоставления возможности сохранения ресурсов процессора от треков содержащих большое количество устройств, команда Track Freeze упрощает обмен проектами между компьютерами. Компьютеры с недостаточной вычислительной мощностью могут быть использованы для запуска больших Live сетов, или любых других замороженных ресурсоёмких треков. Это также означает, что компьютер не имеющий определенных устройств или плагинов используемых в Live сете, всё равно может воспроизводить сет, при условии, что соответствующие треки с устройствами или плагинами заморожены.
Источник: wikisound.org
Как я могу заставить эту Java-программу работать в многоядерном режиме?
Эта программа генерирует все возможные строки из заданной последовательности символов с заданным набором, но это занимает много времени, так как я могу запустить ее в многопроцессорном режиме?
public class LapTest < static int q=0; public static void main(String[] args) < System.out.println(«First Test»); char set1[] = ; int k = 4; printAllKLength(set1, k); System.out.println(q); > // The method that prints all possible strings of length k. It is // mainly a wrapper over recursive function printAllKLengthRec() static void printAllKLength(char set[], int k) < int n = set.length; printAllKLengthRec(set, «», n, k); >// The main recursive method to print all possible strings of length k static void printAllKLengthRec(char set[], String prefix, int n, int k) < // Base case: k is 0, print prefix if (k == 0) < q++; System.out.println(prefix); if (prefix.equals(«hkka»)) < System.exit(0); >return; > // One by one add all characters from set and recursively // call for k equals to k-1 for (int i = 0; i < n; ++i) < // Next character of input added String newPrefix = prefix + set[i]; // k is decreased, because we have added a new character printAllKLengthRec(set, newPrefix, n, k — 1); >> >
user5464291 10 ноя ’16 в 19:40 2016-11-10 19:40
2016-11-10 19:40
2 ответа
Скорее всего, ваша программа связана с вводом / выводом, это означает, что запись вывода на экран займет больше времени, чем вычисление строки. Так что параллельная обработка вам никак не поможет. Независимо от того, что вы будете делать со строкой позже, на современном компьютере приемник (потребитель вашей строки), скорее всего, будет медленнее, чем его вычисление, даже с несовершенным решением.
Также для записи строки на экран, используйте буферизованную программу записи, которая сделает вашу программу намного быстрее. Определите BufferedOutputStream в вашем классе:
static BufferedOutputStream out = new BufferedOutputStream(System.out, 81920);
Тогда пиши с out.write((prefix+»n»).getBytes()); и не забудьте промыть поток out.flush(); как в конце программы, так и на System.exit(0); , Это даст вам значительное улучшение производительности.
Также постарайтесь не решить проблему без рекурсии, которая может дать вам еще один скоростной насос.
Источник: stackru.com
Как включить работу всех ядер многоядерного процессора в Windows 10?
Современные компьютеры имеют большие вычислительные возможности, поэтому удивить двух-, четырех- или даже шестиядерным процессором кого-то сложно. Но начинающий пользователь, не знакомый с особенностями технической «начинки» устройства, может заинтересоваться, как включить все ядра на Windows 10, чтобы увеличить производительность компьютера.
Как узнать количество ядер процессора?
Узнать, сколько ядер в процессоре, который установлен на вашем компьютере или ноутбуке, можно с помощью программ, встроенных средств Windows и в описании к ЦП.
В описании ЦП
Посмотрите в инструкции к устройству, какая модель установлена на вашем компьютере. После этого найдите описание процессора в интернете.
Полезно! Посмотреть модель можно и в описании ОС: ПКМ на меню Пуск → Система → в блоке «Система» указано наименование ЦП.
В Windows
- Введите в строке поиска «диспетчер устройств» и запустите утилиту.
- Откройте ветку «Процессоры» — здесь указано количество ядер в центральном процессоре.
Программами
Создано много программ, которые показывают характеристики устройства.
CPU-Z
Бесплатная программа CPU-Z простая и не требовательная к ресурсам. Запустите утилиту и перейдите во вкладку «ЦП» → в разделе «число активных ядер» указана ядерность процессора.
AIDA64
Условно-бесплатная утилита AIDA64 содержит большой набор функций.
Запустите программу → Системная плата → ЦП → Multi CPU.
Альтернативный вариант: Компьютер → Суммарная информация → блок Системная плата → в строке «Тип ЦП» ЛКМ на процессоре → Информация о продукте.
Сколько ядер используется по умолчанию
Главное запомните! В многоядерном процессоре все ядра работают всегда и одновременно (прочитайте статью «Настройка максимальной производительности Windows 10 для ускорения работы компьютера»). В основном они функционируют на разной частоте (в зависимости от настроек BIOS или специальных утилит, которые поставляются вместе с материнскими платами).
Преимущества работы многоядерного ЦП можно представить следующим образом. Если человек наливает в ведро воду из одного крана, он сделает эту работу за один период времени. Если включить второй кран, наполнить ведро можно намного быстрее, но объем воды, который суммарно можно в него вместить, не увеличится.
При использовании двух кранов оптимизируется работа. То же происходит при использовании нескольких ядер в ЦП – он быстрее и продуктивнее обрабатывает данные, которые поступают для вычисления.
Важно! Процессор работает в многопоточном режиме только в случае, если программа, которую он выполняет, для этого оптимизирована. Если производитель софта не воплотил в нем поддержку многоядерных ЦП, будет задействовано только одно ядро.
Как задействовать все ядра?
Единственный момент, когда процессор может использовать не все ядра – при загрузке операционной системы. Но эту конфигурацию работы можно изменить двумя способами – в Windows и настройках BIOS (как загрузить BIOS, прочитайте в статье «Как запустить BIOS и изменить в нем приоритет загрузки?»).
В Windows 10
- Введите в строке поиска Windows команду: msconfig.
- В окне «Конфигурация системы» → вкладка «Загрузка» → Дополнительные параметры.
- Установите галочку на пункте «Число процессоров» и выберите максимальное число в раскрывающемся ниже списке.
- Установите галочку на пункте «Максимум памяти» и укажите максимальный показатель.
- Снимите галочки с пунктов «Блокировка PCI» и «Отладка» → сохраните изменения → после этого проверьте сделанные настройки. Если они сбились, установите показатель объема памяти меньше.
Важно! На каждое ядро должно приходиться не менее 1024 Мб оперативной памяти, иначе вы добьетесь обратного эффекта.
В BIOS
Вносить изменения в BIOS можно только в случае, если они «слетели» из-за сбоя в ОС (прочитайте статью «Загрузка компьютера Windows 10 в безопасном режиме», чтобы узнать, как запустить ПК, если он работает нестабильно). В остальных случаях все ядра процессора в BIOS включаются автоматически.
Чтобы включить все ядра, зайдите в раздел Advanced Clock Calibration в настройках BIOS. Установите в нем показатели «All Cores» или «Auto».
Важно! Раздел Advanced Clock Calibration в разных версиях BIOS может называться по-разному.
Вывод
Во время работы все ядра процессор задействованы, но они функционируют на разной частоте (в зависимости от сделанных настроек). Включить все ядра ЦП можно при загрузке ОС в настройках BIOS или в параметрах «Конфигурация системы». Это сократит время загрузки ПК.
Источник: windowsten.ru