Библиотека для работы с матрицами - страница 3

 
AlexEro >>:

Дядя хакер, к чему это Ваше мухлевание? У меня там стоИт слово "ИНАЧЕ", (которое Вы дядя хакер преднамеренно скрыли) что является продолжением предыдущего предложения.

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

 
Choomazik >>:

А про один процессор на расчет а другой на графику - бабушке своей расскажите....

Да не вопрос! Моей бабушке нюансы распределения задач GDI (GUI) в винде вот пусть поясняет сама Микрософт (хотя от моей бабушки на том свете М$ будет пожалуй далековато):


http://technet.microsoft.com/en-us/library/cc749980.aspx

In Windows NT 4.0, the Window Manager, GDI, and Win32 Graphics Device Drivers have been incorporated into the Windows NT Executive. The user-mode portions of Window Manger and GDI, Gdi32.dll and User32.dll, remain in user mode, along with the Console and miscellaneous environment functions. They run in the process created by the Client Server Runtime Subsystem, Csrss.exe, which once included all graphics functions in Win32. The server side functions of GDI and Window Manager, previously known as Winsrv.dll, have been incorporated into the Executive as Win32k.sys.

...

Although the new architecture eliminates many thread and process transitions, the kernel-mode transitions still take time and memory. Accordingly, GDI batching and caching have been retained to offset the effect. With batching, graphics calls are saved until a certain number (the default is ten) accumulate in a queue, and then the whole queue is sent to GDI in a single transition. With caching, read-only properties and data structures are stored near the application after they are retrieved, allowing subsequent retrieval to be nearly instantaneous.

 

Вот нашёл в старом архиве два проекта создания MDI (мультиоконного) multithreaded приложения от Микрософт. Скомпилированы. Исходники прилагаются. Также можно применять для проверки загрузки процев с любым количеством ядер. Заодно по ним *иногда явно* видно, как один проц работает преимущественно на ОС и на GUI.

Организация тредов там простейшая. Makefile немного переделаны под себя.

А вообще это всё фигня. Хороший математический алгоритм переплюнет любое наращивание процев и огромную дурную работу ("бездну") программиста по ручному распараллеливанию тредов и их синхронизации. А если к этому добавить глюки Микрософт, которая с нуля и сама написала одну, *только одну* действительно мультитредовую программу, то я бы даже назвал этот процесс "тёмной зловещей бездной".

Файлы:
iathread.zip  47 kb
mltithrd.zip  26 kb
 

Хм, странно, пока ещё никто на этом форуме не давал ссылку на Intel Math Kernel Library. Это непорядок. Вот, даю:

http://software.intel.com/en-us/articles/intel-math-kernel-library-documentation/

Она использует сильно оптимизированный ассемблерный код для отдельных подпрограмм. Матричных ессно в том числе.