![]() |
|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
![]() |
|
|
Опции темы | Поиск в этой теме |
![]() |
#1 |
Пользователь
Регистрация: 24.07.2013
Сообщений: 19
|
![]()
Есть байтовый массив размером пордяка 6 млн. элементов, и над каждым элементом в цикле нужно выполнить довольно ресурсоемкие операции, рассчитав значения n-ого элемента исходя из значений элементов n-k..n+k, причем k может врьироваться от 1 до 1000. Каким образом можно оптимизировать этот процесс под обычный среднестатистический пк, чтобы процесс занимал не более 2 сек? Мб писать в асме?
|
![]() |
![]() |
![]() |
#2 |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
![]()
GPU, OpenCL. Два слова, а подразуевают так много что афигеть можно. Ну или цитирую: "Небольшое изменение алгоритма может способствовать увеличению скорость в разы ато и сотни раз", также можно попробовать второй поток подключить.
do not use your brain
|
![]() |
![]() |
![]() |
#3 | |
Санитар
Старожил
Регистрация: 04.10.2008
Сообщений: 2,577
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#4 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]()
Если елемент зависит от n-k..n+k то как тогда вообще вычислисть n+k елемент? Разве не получается circular reference?
А по теме, если хотите, чтоб вам подсказали как оптимизировать алгоритм, тогда надо озвучить сам алгоритм. |
![]() |
![]() |
![]() |
#5 | |
Пользователь
Регистрация: 24.07.2013
Сообщений: 19
|
![]() Цитата:
|
|
![]() |
![]() |
![]() |
#6 |
Пользователь
Регистрация: 24.07.2013
Сообщений: 19
|
![]()
Насколько я знаю, нет единого стандарта для использования ГПУ - у NVidia это CUDA, есть ещё какие то технологии, поэтому нет желания писать кроссGPUшное приложение.
Ну а опеКЛ же как то оптимизирует ресурсоёмкие процессы с помощью только ЦПУ? Я тоже хочу знать, как он это делает. Поправьте меня, если я в чём-то ошибся Последний раз редактировалось arm9n; 07.08.2013 в 16:22. |
![]() |
![]() |
![]() |
#7 |
Пользователь
Регистрация: 24.07.2013
Сообщений: 19
|
![]() |
![]() |
![]() |
![]() |
#8 |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
![]()
do not use your brain
|
![]() |
![]() |
![]() |
#9 | |
Форумчанин
Регистрация: 09.07.2013
Сообщений: 249
|
![]() Цитата:
И вопрос, нахрена тебе именно 2 секунды скорость выполнения, а не 10?
do not use your brain
Последний раз редактировалось Кащей; 07.08.2013 в 21:23. |
|
![]() |
![]() |
![]() |
#10 |
Старожил
Регистрация: 13.07.2012
Сообщений: 6,372
|
![]() |
![]() |
![]() |
![]() |
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Работа с массивом | ReMicroN | Помощь студентам | 1 | 06.05.2012 11:05 |
Работа с массивом | Aleks2215 | Microsoft Office Excel | 10 | 04.11.2010 23:38 |
Работа с массивом | ZOHAN | Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM | 10 | 16.04.2010 01:20 |
работа с массивом | Андрей.12 | Помощь студентам | 2 | 22.10.2009 00:25 |
работа с массивом | begemotikdin | Паскаль, Turbo Pascal, PascalABC.NET | 2 | 21.06.2008 21:40 |