Как собрать высокопроизводительный комп? (и где?)

GMX

schizophrenic
#1
Кароч, техзадание такое: нужен компьютер для производства математических операций с плавающей точкой (не рендеринг) с наибольшей производительностью под управлением (как ни печально) виндоус. Не для игр и графики - а чистые вычисления. Фактически - однообразные операции над статистическим материалом.
Памяти задействуется мало, графика не задействуется вовсе, взаимодействие с винтом - минимальное.
По какому пути идти? Многоядерные камни? Многопроцессорные мамы? Или тупое повышение герцовки?
 

Rezident

Житель центра
#2
а разве CUDA не вычисляет такие задачи....это как раз видеокарту нужно ставить касарей за 15 мин....
 
D

DarkAngel

Guest
#5
[quote name='GMX' timestamp='1299333418' post='439974']
Кароч, техзадание такое: нужен компьютер для производства математических операций с плавающей точкой (не рендеринг) с наибольшей производительностью под управлением (как ни печально) виндоус. Не для игр и графики - а чистые вычисления. Фактически - однообразные операции над статистическим материалом.
Памяти задействуется мало, графика не задействуется вовсе, взаимодействие с винтом - минимальное.
По какому пути идти? Многоядерные камни? Многопроцессорные мамы? Или тупое повышение герцовки?
[/quote]

64 битная винда?
 

Canniballissimo

Житель центра
#6
Да, видеокарточные вычисления весьма шустро работают в сравнении с ЦПУ, так что смотри в сторону КУДы.
 
M

Mor-DA

Guest
#7
[member="GMX"], верно тебе говорят CUDA - 2-3 видеокарты = небольшой вычислительный центр.
Только ПО должно уметь с ними работать.

http://www.nvidia.ru/page/tesla_computing_solutions.html
http://www.nvidia.ru/object/fermi_architecture_ru.html
 

GMX

schizophrenic
#8
[quote name='DarkAngel' timestamp='1299336044' post='439980']
64 битная винда?
[/quote]
Можно поставить какую угодно.
Да, спасибо всем за советы. Обращу свой взор на CUDA. Блок вычислений придется вынести в отдельную DLL, работающую с CUD'ой.
 

KVG

Житель города
#9
Если не секрет, что за такие вычисления, на которые пойдут такие мощности?У nvidia есть готовые сборки на такой случай, но в городе таких точно не появится.
 

KVG

Житель города
#11
Для таких расчетов нет необходимости в бешенных мощностях,только выброшенные на ветер деньги. У программ такого рода есть свои системные требования и они далеко не высоки!
 

GMX

schizophrenic
#12
Код:
Код:
void compareSignals()
{
int i, shift;
for (shift=shiftN; shift<=shiftK; shift=shift+10)
{
if (iOpen(NULL, StPer,0)-iOpen(NULL, StPer, shift)>=20*Point)
{
for (i=2;i<=22;i++)
{
if (Force(shift, i)==1) ForceResult[(shift-20)/10][i-2]++;
else if (Force(shift, i)==-1) ForceResult[(shift-20)/10][i-2]--;
}
// Alert(i);
}
if (iOpen(NULL, StPer, shift)-iOpen(NULL, StPer,0)>=20*Point)
{
for (i=5;i<=105;i=i+2)
{
if (Force(shift, i)==-1) ForceResult[(shift-20)/10][i-2]++; 
else if (Force(shift, i)==1) ForceResult[(shift-20)/10][i-2]--;

}
// Alert(i);
}
}   
}

double RadToGrad(double Rad)
{
double pi=3.1415926535;
return(180/pi*Rad);
}

double corner(double forceCurr, double forcePrev, double forcePrevPrev)
{
double corn1, corn2;
corn1=RadToGrad(MathArctan(0.1/MathAbs(forcePrev-forcePrevPrev)));
corn2=RadToGrad(MathArctan(0.1/MathAbs(forceCurr-forcePrev)));
ObjectSetText("my","Угол="+(corn1+corn2)+" градусов");
return(corn1+corn2);
}

extern double corn=45;
int Force(int shift, int Per)         // второй экран - стохастика, индекс силы и ADX - если хотя бы двое дают сигнал - совершаем сделку
{
int ball=0;

double forceCurr, forcePrev, forcePrevPrev;
forceCurr=iForce(NULL, Per, 3, MODE_EMA, PRICE_CLOSE, 0+shift);
forcePrev=iForce(NULL, Per, 3, MODE_EMA, PRICE_CLOSE, 1+shift);
forcePrevPrev=iForce(NULL, Per, 3, MODE_EMA, PRICE_CLOSE, 2+shift);

if (forceCurr<0 && forceCurr>forcePrev && forcePrevPrev>forcePrev && MACDsamp()==1) 
{
if (corner(forceCurr, forcePrev, forcePrevPrev)<corn) ball++;
}
if (forceCurr>0 && forceCurr<forcePrev && forcePrevPrev<forcePrev && MACDsamp()==1)
{ 
if (corner(forceCurr, forcePrev, forcePrevPrev)<corn) ball--;
}


if (ball>=1) return(1);
if (ball<=-1) return(-1);
return(0);
}
Это только один индикатор с одним оптимизируемым параметром - периодом сглаживания скользящей средней. Анализ года истории по данному алгоритму на М15 занимает на Core 2duo 1.33 порядка восьми-десяти часов. Анализ шести индикаторов увеличит время обработки в 6! раз. И это - элементарные скользящие средние + арктангенс.
Если же вести речь о нейросетях - то там совсем другая сложность вычислений.
СИстемные требования у программ совсем не высоки. Но вот скорость вычислений зачастую становится критичным фактором.

Задача, которую себе ставлю проста. В то время, когда другие создают торговую систему и проверяют ее на истории, я хочу проанализировав историю, создать систему. Если рынок произвел движение, какие индикаторы предсказывали это, с какими параметрами, как эти же параметры вели себя в каждом другом движении рынка и т.п. То есть, заменить свои наблюдения компьютерным анализом.

Возможно на выходе получится и полное говно, но проверить это можно, только посчитав.
 

Canniballissimo

Житель центра
#13
[member="GMX"], вот сразу вопрос в лоб. А вот эти вычисления, которые по 8 и больше часов, нельзя провести 1 раз и потом пользоваться результатами? Закодировать как-нибудь кривую, не используя все-все точки? А то мартышкин труд получается, имхо. Может там раз в 100 можно количество исходных данных уменьшить.
 

GMX

schizophrenic
#14
Canniballissimo, поверь, что мог - выкинул. Дальнейшее сокращение кода приведет к левым результатам. Сейчас проверяется каждый пятый бар на минутном графике и проверяются все индикаторы с разными параметрами на расстоянии 10, 20, 30, 40 и 50 баров назад по истории от него.
 

GMX

schizophrenic
#16
Если получится - конечно не покажу. ;)

Нада тачку собрать для начала. У NVIDEA есть готовые решения, заточенные именно под эти задачи (уже на сайте все изучил), но стоит такая тачка под поллимона. Конечно, стольким я рискнуть не готов.
 

KVG

Житель города
#17
Тогда проще ставить самый продвинутый шестиядерник и вперед!CUDУ к сожалению в деле пока не доводилось увидеть, но штука походу серьезная!
 
M

Mor-DA

Guest
#18
[member="KVG"], кодирование видео и звука - быстрее процессора в разы. Доступен софт.
 

KVG

Житель города
#19
В том-то и дело, что ни тем ни другим не занимаюсь, а CUDу для ускорения визуализации уже полтара года жду.

В том-то и дело, что ни тем ни другим не занимаюсь, а CUDу для ускорения визуализации уже полтара года жду.
 
M

Mor-DA

Guest
#20
[member="KVG"], http://www.cgevent.ru/imgs/2010/add/gpu.pdf
- Autodesk 3ds Max 2011
- Quicksilver renderer
- V-Ray RT GPU
- finalRender R4
- Octane renderer
- ARION Renderer
- LuxRender + SmallLuxGPU renderer (openSource)

не?