Форум: "Основная";
Текущий архив: 2007.08.19;
Скачать: [xml.tar.bz2];
ВнизОбработка Bitmap двумя Thread Найти похожие ветки
← →
homm © (2007-06-07 22:23) [40]> Как показывает практика можно и без асма сделать не хуже.
> А то и лучше. Ибо оптимизатор делфи генерит код очень хитро
> и лучше чем большинство программеров среднего уровня на
> асме.
Приятно знать, что я не «программер среднего уровня» в этом вопросе. Хотя, признать, без использования MMX как-то увеличить скорость грамотного(!) кода достаточно трудно.
← →
Eraser © (2007-06-07 22:26) [41]> [36] DVM © (07.06.07 21:53)
> Только вот толку от многопоточности не будет никакой ибо
> пока один поток залочил битмап, другой будет ждать.
а по-другому никак, GDI функции не потокобезопасны.
а толк будет, при условии, что один поток постоянно работает с битмапом, а другой, к примеру, только время от времени занимается прорисовкой этого битмапа на форме.
← →
homm © (2007-06-07 22:30) [42]> а толк будет, при условии, что один поток постоянно работает
> с битмапом, а другой, к примеру, только время от времени
> занимается прорисовкой этого битмапа на форме.
Можно не использовать GDI функции для обработки. См. [39]
← →
oxffff © (2007-06-07 22:31) [43]
> а по-другому никак, GDI функции не потокобезопасны.
Ему нужно просто выдернуть весь буфер.
Поскольку этот буфер статичен (только чтение, используется как источник), то обращение к нему бы влечет за собой нагрузки на когерентность кэша при многоядерности и многосокетности.
← →
oxffff © (2007-06-07 22:33) [44]
> Поскольку этот буфер статичен (только чтение, используется
> как источник), то обращение к нему НЕ влечет за собой нагрузки
> на когерентность кэша при многоядерности и многосокетности.
>
← →
Eraser © (2007-06-07 23:05) [45]> [43] oxffff © (07.06.07 22:31)
судя по задаче, автору проще создать 2 отдельных битмапа, а после обработки в отдельных потоках просто склеить их..
← →
homm © (2007-06-07 23:14) [46]> [45] Eraser
процедуру склейки не распаралелишь, к тому-же не понятно, чем «проще».
← →
oxffff © (2007-06-07 23:16) [47]Купить?
← →
oxffff © (2007-06-07 23:17) [48]Книгу естественно.
← →
oxffff © (2007-06-07 23:27) [49]to Igor_K_A
Вы нас всех хоть в соавторах диплома упомините.
Хотя больше на практическое задание смахивает.
← →
Eraser © (2007-06-08 00:03) [50]> чем «проще».
чем на свой страх и риск блокировать участки памяти.
← →
homm © (2007-06-08 00:18) [51]> чем на свой страх и риск блокировать участки памяти.
Зачем? Все проще. Делим попалам, один поток — один половину, другой — другую.
← →
Pavia © (2007-06-10 02:53) [52]На самом деле надо понять как работают паролельные процессы. Тогда все станет ясно. При работе с паролельными процессами важна синхронизация. Но так как в данном контексте процессы работуют каждый со своими данными, то все должно работать и без нее. Остается только правельно синхронизовать момент старта и остановки процессов.
Как программист со средним знанием асм скажу следующее. Дельфи генерирует безобразный код. Так, что если я перепишу на асм то программа будет работать быстрее в большинстве случиев. А если уж и использовать mmx, то точно прирост будет значительный.
← →
Германн © (2007-06-10 03:01) [53]а
> Pavia © (10.06.07 02:53) [52]
Вань. Лучше не позорься! Такое количество грамматических ошибок - явный перебор!
← →
Strate © (2007-06-10 21:55) [54]А можно разбить битмап на 2 битмапа, на каждый зафигачить поток который уменьшит его и потом соединить :)
Но наврено это глупо, т.к. разбивка и склеивание долго буту работать
← →
Vovan Real (2007-06-10 23:57) [55]Удалено модератором
Примечание: в зеркало посмотри
← →
homm © (2007-06-11 00:07) [56]> [55] Vovan Real
Рад тебя снова видеть.
← →
DVM © (2007-06-11 00:10) [57]
> Pavia © (10.06.07 02:53) [52]
> Дельфи генерирует безобразный код
> Так, что если я перепишу на асм то программа будет работать
> быстрее в большинстве случиев
А если я твой пост перепишу на нормальном русском языке и без ошибок, то прочтя его, ты сам, может быть, поймешь, что ты не совсем прав насчет безобразного кода, который генерит Делфи.
Страницы: 1 2 вся ветка
Форум: "Основная";
Текущий архив: 2007.08.19;
Скачать: [xml.tar.bz2];
Память: 0.56 MB
Время: 0.264 c