Any help will be highly appriciated)
Strange thing occures when i try to build a custom dll.
the make command i use looks like this: nmake ia32 buf_lib= export=func_list name=mkl_1
while func list contains only one function
And everything works perfect.
Then i add one more function to func_list so it looks like this:
, make another dll:
nmake ia32 buf_lib= export=func_list name=mkl_2
Matrix-Matrix product still works
but the dgemv function seems not working
Matrix A is 10x10 matrix, containing 1 on each position.
B is a 10-dimension vector containing 1 on each position.
C is a 10-dimention vector containing 1 on each position.
This call of dgemv
CBLAS.dgemv(CBLAS.TRANSPOSE.NoTrans, 10, 10, 25.0, A, 10, B, 10, 11.0, C, 10); (C := 25*A*B+11*C)
is successful and shows no link errors. That means that a new entry point arised.
BUT! This call should change the C vector an make 36 on each position, but it doesn't! It leaves C unchanged.
Moreover, the strange thing i found, that the mkl_1.dll is about 995 Kb, and the mkl_2.dll is smth like 996 Kb. Is it possible that additional function dgemv adds only 1Kb to the output dll?
I also tried another styles in func_list file, like cblas_dgemm and cblas_dgemv, but it doesn't change a thing.
looks like my blas library is not full. What can i do?
May be i should change some Object File Library files in /%MKL_ROOT%/lib/ia32/ ?