Ужасно медленно вызываются функции из DLL

 
У меня функции (с передачей небольшого массива) вызываются примерно в 1000 раз медленней чем EXE->DLL
Это у меня только так ?
Или это просто такой "хороший" скриптовый движок.
 
DLL функции вызываются быстро (кроме первого раза на подгрузке и инициализации).
Приложите, пожалуйста, кусок кода с вызовом функций из DLL?
 
объявляю так:
void Input(int Pointer, int Arr[], int Count);

int arr[1000];

делаю 40000 запусков в течении 1,5 часа
Input(pointer, arr, 1000);


из exe теже самые операции выполняются примерно за 2-3 минуты
т.е. временем выполнения Input можно пренебречь
 
Не совсем понял ситуации.

1) 40000 раз подряд вызовов функции их внешней программы занимает 2-3 минуты в цикле for(i=0;i<40000;i++) Input(....) - это понятно (кстати, пренебречь временем выполнения функции накак нельзя - очень много времени тратит)
2) а как происходит вызов их эксперта? Тоже чистый цикл for(i=0;i<40000;i++) Input(....) ?

Проведите чистую проверку на простом цикле с замером времени через GetTickCount(), пожалуйста.
 
Вы правы, проблема не в вызовах dll.

Я тестирую эксперта на 40000 запусков start (пробывал все виды моделирования(и по ценам открытия тоже)) - уж больно медленно выполняется тестирование.
(по сравнением с циклом for(i=0;i<40000;i++))

Я там делаю некоторые вычисления, но они не должны тормозить - я их оформлял как индикатор и на 31000 барах истории он инициализировался быстро.
Еще я там делаю ArrayInitialize(arr,-1);
И все.
(остальное if-then-else)
Причина обращения: