Что нового

AutoIt и многоядерные процессоры: предвидися ли поддержка?

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Так сталось, что четверть загрузки моего процессора уже не достаточна для обработки данных (работа с комбинаторикой). Предвидится ли в будущем поддержка AutoIt-ом многоядерных систем? Или быть может такую поддержку можно как-то реализовать программно самому?
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik [?]
можно как-то реализовать программно самому
разве что через пятую точку. запуская из основного скрипта вспомогательные при этом организовав обмен данными между этими скриптами что будет узким местом и преимущество использования нескольких ядер вполне может перекрыться недостаточно высокой скоростью обмена данными.
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Kaster

А использование в рассчетах GPU наверно вообще фантастика? ))))
 

Yashied

Модератор
Команда форума
Глобальный модератор
Сообщения
5,379
Репутация
2,724
Да разработчики планируют в ближайшее время выпустить свою ОС - AutoItux (или что-то типа этого).
 

CreatoR

Must AutoIt!
Команда форума
Администратор
Сообщения
8,671
Репутация
2,481
Yashied [?]
разработчики планируют в ближайшее время выпустить свою ОС - AutoItux
:laugh: ты это серъёзно? я аж пошёл и открыл календарь, посмотреть, не 1-ое ли апреля сегодня ;D
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
OffTopic:
Yashied [?]
я даже не могу произнести это крамольное слово :rofl:



Добавлено:
Сообщение автоматически объединено:

Kalisnik [?]
А использование в рассчетах GPU наверно вообще фантастика? ))))
не силен в этом, но не думаю что использовать GPU можно в средах отличных от CUDA. ну может есть что-то от ATI. но суть в том, что программировать в этом случае все равно надо будет на C.
и еще, использовать в расчетах AutoIt - не самая лучшая идея.
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik
а что тут объяснять - Plain C/Fortran/Matlab - на несколько порядков считают быстрее AutoIt. подозреваю из-за вызовов внешних библиотек по каждому пуку вздоху
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Kaster
На сколько мне известно современные GPU считают в несколько раз быстрее чем современные CPU. А поскольку мой GPU от NVIDIA, то самый оптимальный вариант использовать для расчетов C, как я понимаю. Дабы извлечь все вкусности из архитектуры CUDA. Но... основная программа написана на AutoIt.Предположим, пишу отдельно движок для расчетов на С... а вот как потом организовать обмен данными мне как-то с трудом представляется (вообще это для меня пока больная тема, поскольку не было опыта в организации такой работы скриптов). По сути скорость самого обмена данными между скриптами не принципиальна. Скрипт AutoIt'а отправляет исходные данные в "скрипт-С". Тот обрабатывает и возвращает результат обратно. Вопрос в том, как вообще наладить такой обмен данными. Я уже вроде что-то подобное спрашивал, но как-то до меня так и не дошла хитрость сего момента (по крайней мере сейчас в голову приходит только глупая мысль производить обмен данными через интерфейс GUI :laugh:smile:))
 

Yuri

AutoIT Гуру
Сообщения
737
Репутация
282
Попробуй создать на С или на чем нибудь другом библиотеку dll,
а в AutoIt вызывать функции этой библиотеки с помощью DllCall.
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Yuriy
А ведь и вправду... почему бы и нет? Отличная мысль! ;)
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik
смотря кто кому передает данные. к примеру, можно передавать параметры расчета в виде ключей командной строки, или, если параметров много, сформировать файл со всеми данными и скормить путь к нему в виде ключа ком. строки. выводные данные можно в другой файл. по крайней мере так делал я. правда я не программировал под CUDA. и еще, кажись CUDA доступен только под unix* :smile:
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Kaster
Судя по тому что написано на сайте NVIDIA, CUDA реализуется и для семейства Windows (XP, Vista, Win7). Причем как для 86 так и для 64 версий ОС. :guitar:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik
:laugh: CUDA доступен под Python. все, срочно иду изучать
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Kaster
Я кроме AutoIt'а ни с чем другим дела и не имел. Python по-легче в освоении будет чем Си? :whistle:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik
ну для меня было именно так. это все индивидуально. но с парадигмой ООП все же придется ознакомиться
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Kaster
Почитал, посмотрел, взесил и оценил... куда мне до CUDA? - пока даликовато! )) А вот Fortran с компилятором от Intel заточенный соответсвенно под CPU от того же Intel весьма заинтересовал. :smile: Попробую пока остановиться на этом варианте!
 

Garrett

Модератор
Локальный модератор
Сообщения
3,999
Репутация
967
Kalisnik [?]
Я кроме AutoIt'а ни с чем другим дела и не имел. Python по-легче в освоении будет чем Си?
OffTopic:
Вот хоть убейте меня, но самые легкие для изучения ЯП имеют бейсико-подобный синтаксис!
 
Автор
K

Kalisnik

Эволюция
Сообщения
295
Репутация
63
Garrett
Вот передомной сейчас выбор стоит: какой же все-таки взять ЯП... Нужно написать движок для расчетов (исключительно для рассчетов, но довольно массивных) и прикрутить его к скрипту AutoIt (по скольку, как выяснилось AutoIt для серьездных расчетов не лучшее решение). Отсюда чем более быстрый код будет у ЯП, тем лучше, но при этом не в ущер дружелюбности самого ЯП по отношению к пользователю - что бы как можно более снизить время-затраты на освоение основ языка. Исходя из этого, интересно было бы узнать Ваше мнение: что же все-таки выбрать? Бэйсик? Да, он имеет схожий с AutoIt'ом синтаксис, но достаточно ли он быстр?.... Хотя, наверно он должен поддерживать многоядерные системы - это уже большой плюс! ) А с Fortran я еще не ознакомился, скачал пока компилятор. Завтра поищу справку или какое-нибудь руководство к нему... тогда уж и решу что с ним делать. :smile:
 

kaster

Мой Аватар, он лучший самый
Команда форума
Глобальный модератор
Сообщения
4,020
Репутация
626
Kalisnik
Fortran немного проще, т.к. это мамонт и в нем нет ООП, чисто процедурное программирование. в нем есть параллелизация кода и многопоточность, но нет CUDA-интерфейса. Basic, хм никогда не слышал чтобы вычислительно-затратные программы писали на нем, хотя сам с этим ЯП не слишком знаком. так что если хочешь задействовать GPU, то тут либо C, либо, как выяснилось, Python. если хватит и многоядерности, то можно и C/C++/C#/Fortran. но я с недавних пор узнал, что при работе с векторными величинами всех обходит Matlab - ибо реализация векторных операций там реализовано на уровне архитектуры самого процессора. но там где Matlab проигрывает люди просто имплементируют коды на Fortrane. получается что такая связка быстрее всех считает
 
Верх