Сверточная нейронная сеть (CNN) для аудио [закрыто]

Я столкнулся с проблемой многопоточного сортирования себя последние пару дней. Как объяснялось на этом слайде caltech , лучшее, что вы можете сделать, просто многопоточным каждым шагом подходов к разграничению и завоеванию по очевидному числу потоков (количество делений) ограничено. Я предполагаю, что это связано с тем, что, хотя вы можете запускать 64 раздела по 64 потокам, используя все 64 ядра вашей машины, 4 деления могут выполняться только на 4 потоках, 2 на 2 и 1 на 1 и т. Д. Так что для многих уровней ретрансляции ваша машина недоиспользуется.

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

Iff, первые критерии вашей функции сортировки основаны на целочисленном максимальном размере s, будь то фактическое целое число или символ в строке, так что это целое или char полностью определяет наивысший уровень вашего типа, тогда я думаю, что есть очень быстрое (и простое) решение. Просто используйте это начальное целое, чтобы разделить проблему сортировки на более мелкие проблемы сортировки и отсортировать их по стандартным однопоточным сортировочным алгоритмом по вашему выбору. Думаю, деление на s-классы можно сделать за один проход. Проблема слияния не возникает после выполнения независимых видов, потому что вы уже знаете, что все в классе 1 сортируется до класса 2 и т. Д.

Пример: если вы хотите сделать сортировку на основе strcmp ( ), затем используйте первый символ в своей строке, чтобы разбить ваши данные на 256 классов, а затем отсортируйте каждый класс в следующем доступном потоке, пока они не будут выполнены.

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

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

30
задан moeabdol 27 March 2014 в 04:51
поделиться