Автор |
Сообщение |
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Например есть массив
MAS 8xN ячеек (числа double)
Например создать N потоков каждый из которых вычисляет квадрат числа из ячейки помешает в туже ячейку
Например есть массив
MAS 8xN ячеек (числа double)
Например создать N потоков каждый из которых вычисляет квадрат числа из ячейки помешает в туже ячейку
|
|
|
|
Добавлено: Сб апр 14, 2012 15:48 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): Идея следующая. Есть несколько массивов. Каждый из элементов можно обработать независимо от другого, но как сделать так, чтобы слово которое обрабатывает значение исользовало свой сопроцессор (счетный цикл разбивается на более мелкие на n-ядер и каждый из них выполняется на своем ядре). Будет ли раскладка по ядрам происходить именно таким образом? Ведь в ОС и так крутится множество задач.
[quote="incubus370"]Идея следующая. Есть несколько массивов. Каждый из элементов можно обработать независимо от другого, но как сделать так, чтобы слово которое обрабатывает значение исользовало свой сопроцессор (счетный цикл разбивается на более мелкие на n-ядер и каждый из них выполняется на своем ядре).[/quote] Будет ли раскладка по ядрам происходить именно таким образом? Ведь в ОС и так крутится множество задач.
|
|
|
|
Добавлено: Сб апр 14, 2012 15:23 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Идея следующая. Есть несколько массивов. Каждый из элементов можно обработать независимо от другого, но как сделать так, чтобы слово которое обрабатывает значение исользовало свой сопроцессор (счетный цикл разбивается на более мелкие на n-ядер и каждый из них выполняется на своем ядре).
Идея следующая. Есть несколько массивов. Каждый из элементов можно обработать независимо от другого, но как сделать так, чтобы слово которое обрабатывает значение исользовало свой сопроцессор (счетный цикл разбивается на более мелкие на n-ядер и каждый из них выполняется на своем ядре).
|
|
|
|
Добавлено: Сб апр 14, 2012 14:47 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): Будут ли у этих потоков свои свои стеки или нет? Можно примерчик? Стек там надо указать в параметрах вызова. Примера нет, потому что еще не требовалось такого.
[quote="incubus370"]Будут ли у этих потоков свои свои стеки или нет? Можно примерчик?[/quote] Стек там надо указать в параметрах вызова. Примера нет, потому что еще не требовалось такого.
|
|
|
|
Добавлено: Сб апр 14, 2012 14:37 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Хищник писал(а): incubus370 писал(а): А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу? Встроенного ничего нет. Поток можно создать на общих основаниях через CreateThread, подключив это (и прочее для управления потоками) из dll. Будут ли у этих потоков свои свои стеки или нет? Можно примерчик?
[quote="Хищник"][quote="incubus370"]А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу?[/quote] Встроенного ничего нет. Поток можно создать на общих основаниях через CreateThread, подключив это (и прочее для управления потоками) из dll.[/quote]
Будут ли у этих потоков свои свои стеки или нет? Можно примерчик?
|
|
|
|
Добавлено: Сб апр 14, 2012 14:27 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу? Встроенного ничего нет. Поток можно создать на общих основаниях через CreateThread, подключив это (и прочее для управления потоками) из dll.
[quote="incubus370"]А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу?[/quote] Встроенного ничего нет. Поток можно создать на общих основаниях через CreateThread, подключив это (и прочее для управления потоками) из dll.
|
|
|
|
Добавлено: Сб апр 14, 2012 14:13 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Хищник писал(а): incubus370 писал(а): Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль? Да, каждый раз Init() выделит свои области памяти для кода и данных через GlobalAlloc. Будет несколько независимых форт-машин. А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу?
[quote="Хищник"][quote="incubus370"]Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль?[/quote] Да, каждый раз Init() выделит свои области памяти для кода и данных через GlobalAlloc. Будет несколько независимых форт-машин.[/quote]
А организация потоков на уровне самой форт машины допустима? Чтобы организовать своего рода параллельную программу?
|
|
|
|
Добавлено: Сб апр 14, 2012 14:02 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль? Да, каждый раз Init() выделит свои области памяти для кода и данных через GlobalAlloc. Будет несколько независимых форт-машин.
[quote="incubus370"]Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль?[/quote] Да, каждый раз Init() выделит свои области памяти для кода и данных через GlobalAlloc. Будет несколько независимых форт-машин.
|
|
|
|
Добавлено: Сб апр 14, 2012 11:51 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль?
Если осуществить подключение библиотеки в нескольких потоках, и в каждом из них работать с библиотекой индивидуально т. е. есть кусок следующий кусок кода есть в кажом потоке
Init(); Evaluate(); Done();
то для кажого из потоков библиотека будет ли представлять свой терминал/консоль?
|
|
|
|
Добавлено: Сб апр 14, 2012 11:22 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): По умолчанию при вызове EvaluateC окно OpenGL обязано появиться или нет? Я лично его не заметил. В dll оно никак не появится. quark.dll - это не приложение, а библиотека, она предоставляет ресурсы, но никаких элементов управления не создает. Расчет на то, что такие элементы есть в вызывающем приложении.
[quote="incubus370"]По умолчанию при вызове EvaluateC окно OpenGL обязано появиться или нет? Я лично его не заметил.[/quote] В dll оно никак не появится. quark.dll - это не приложение, а библиотека, она предоставляет ресурсы, но никаких элементов управления не создает. Расчет на то, что такие элементы есть в вызывающем приложении.
|
|
|
|
Добавлено: Ср апр 11, 2012 08:30 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Хищник писал(а): Я уже проверил, оно работает с EvaluateC. Считает, оставляет на стеке что нужно. Правда, графический экран вытаскивается наружу прямо-таки с черепашьей скоростью (ср. с OpenGL). По умолчанию при вызове EvaluateC окно OpenGL обязано появиться или нет? Я лично его не заметил.
[quote="Хищник"]Я уже проверил, оно работает с EvaluateC. Считает, оставляет на стеке что нужно. Правда, графический экран вытаскивается наружу прямо-таки с черепашьей скоростью (ср. с OpenGL).[/quote]
По умолчанию при вызове EvaluateC окно OpenGL обязано появиться или нет? Я лично его не заметил.
|
|
|
|
Добавлено: Ср апр 11, 2012 05:18 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Хищник писал(а): incubus370 писал(а): Хищник так в руководстве по quark'у нет ничего про EvaluateC. Хм... может быть, старая версия документации? Проблема с передачей параметров уже обсуждалась на форуме, после этого и была добавлена версия EvaluateC. По крайней мере, приведенный фрагмент что-то там выполняет Что - не проверял, проверял код ошибки после EvaluateC. На вменяемых строках, как положено, дает 0, на asdfgh дает ошибку. У меня руководство по 28 билду. В нем про EvaluateC к сожалению ничего не упоминалось. Взял его я у forther'a.
[quote="Хищник"][quote="incubus370"]Хищник так в руководстве по quark'у нет ничего про EvaluateC.[/quote] Хм... может быть, старая версия документации? Проблема с передачей параметров уже обсуждалась на форуме, после этого и была добавлена версия EvaluateC. По крайней мере, приведенный фрагмент что-то там выполняет :) Что - не проверял, проверял код ошибки после EvaluateC. На вменяемых строках, как положено, дает 0, на asdfgh дает ошибку.[/quote]
У меня руководство по 28 билду. В нем про EvaluateC к сожалению ничего не упоминалось. Взял его я у forther'a.
|
|
|
|
Добавлено: Ср апр 11, 2012 05:13 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
Я уже проверил, оно работает с EvaluateC. Считает, оставляет на стеке что нужно. Правда, графический экран вытаскивается наружу прямо-таки с черепашьей скоростью (ср. с OpenGL).
Я уже проверил, оно работает с EvaluateC. Считает, оставляет на стеке что нужно. Правда, графический экран вытаскивается наружу прямо-таки с черепашьей скоростью (ср. с OpenGL).
|
|
|
|
Добавлено: Пн апр 09, 2012 13:05 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370 писал(а): PS. Antender, в руководстве по quark'у для особо одаренных написано, что используется fastcall вызов процедур с передачей параметра в EAX. так что учи английский сам. Английский нужен не для чтения манов от хищника на русском , в которых не было ничего про EvaluateC, а для MSDN в котором чёрным по белому написано, что fastcall не поддерживается! С cdecl конечно проблем нет.
[quote="incubus370"] PS. Antender, в руководстве по quark'у для особо одаренных написано, что используется fastcall вызов процедур с передачей параметра в EAX. так что учи английский сам.[/quote]
Английский нужен не для чтения манов от хищника на русском , в которых не было ничего про EvaluateC, а для MSDN в котором чёрным по белому написано, что fastcall не поддерживается! С cdecl конечно проблем нет.
|
|
|
|
Добавлено: Пн апр 09, 2012 12:26 |
|
|
|
|
|
Заголовок сообщения: |
Re: Quark.dll + Visual C# |
|
|
incubus370, уровень +1, опыт +5
incubus370, уровень +1, опыт +5 :)
|
|
|
|
Добавлено: Пн апр 09, 2012 08:30 |
|
|
|