|
|
Регистрация Восстановить пароль |
Повторная активизация e-mail |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
27.02.2012, 21:48 | #1 |
Форумчанин
Регистрация: 26.02.2010
Сообщений: 126
|
Ускорение функций
Здравствуйте. Есть функция которая обрабатывает массив вершин (1024х1024 пока, может быть и больше) используя операции с векторами (дот, кросс и т.д.), так вот время обработки очень большое нужно както ускорить этот процесс, слышал про всякие SSE, MMX и тому подобные приколы, но сам даже с ассемблером последний раз общался еще в универе (где то курс 3, и то только микроконтроллеры). Подскажите пожалуйска какие нибудь примеры или статьи.
|
27.02.2012, 21:56 | #2 |
Старожил
Регистрация: 30.12.2009
Сообщений: 11,426
|
в Delphi? Я недавно поднимал топик...(Ну месяца эдак 3 назад).
Вот что накачал(статьи, учебники, книги), все в архиве. изучай на здоровье Добавлю, что delphi не производит оптимизацию твоих asm вставок, так что, как вставил, так компилятор и захавал. Может получится ситуация, когда твой sm код работает медленне обычного. P.S. Если учил ассемблер где-то там, то вспомнить будет не сложно. Последний раз редактировалось Человек_Борща; 27.02.2012 в 21:58. |
27.02.2012, 22:12 | #3 |
Форумчанин
Регистрация: 26.02.2010
Сообщений: 126
|
Большое спасибо, почитаю.
Еще вопрос, дабы не начинать новой темы, возможно ли двигать прогрессбар без вызова Application.processmessages? Последний раз редактировалось Stilet; 28.02.2012 в 14:55. |
27.02.2012, 22:36 | #4 | |
Форумчанин
Регистрация: 30.10.2010
Сообщений: 524
|
Цитата:
P.S. возможно я вас не так понял. |
|
28.02.2012, 00:28 | #5 |
Форумчанин
Регистрация: 26.02.2010
Сообщений: 126
|
Так вот я о чем думаю, Application.processmessages в цикле вызывается 1024 раза, это замедляет скорость выполнения цикла, родилась соответственно идея чтобы приложение не обрабатывало всю очередь сообщений, а тупо обновить прогрессбар. Я вкурсе что приложение будет как бы подвисать, но это не важно оно и так подвисает по серезному при выполнении даной процедуры.
|
28.02.2012, 00:37 | #6 | |
Старожил
Регистрация: 28.01.2009
Сообщений: 21,000
|
Цитата:
Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел. Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите. |
|
28.02.2012, 02:14 | #7 |
Форумчанин
Регистрация: 26.02.2010
Сообщений: 126
|
Дык, я это понимаю, вот и спрашиваю, а вдруг можно как то по другому.
|
28.02.2012, 08:35 | #8 |
Участник клуба
Регистрация: 09.11.2007
Сообщений: 1,761
|
В таком случае, тогда лучше использовать отдельный поток.
|
28.02.2012, 18:52 | #9 |
Форумчанин
Регистрация: 26.02.2010
Сообщений: 126
|
Вариант, спасибо, чет сам не додумался.
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Ускорение времени | rinasmichael | Win Api | 3 | 10.11.2011 09:15 |
Ускорение компиляции | jetyb | Помощь студентам | 4 | 13.09.2011 23:38 |
Ускорение д2010 | Utkin | Софт | 2 | 29.03.2010 16:03 |
ускорение компа | Dark Energy | Компьютерное железо | 4 | 14.07.2008 20:15 |
Ускорение работы с БД | za4ot | БД в Delphi | 6 | 11.07.2008 19:05 |