I am working on a program that I need to simulate program that called OpenBLAS functions with gem5 in SE mode. My code(in C) is as below
#include <cblas.h>
#include <stdio.h>
void main()
{
int i=0;
double A[6] = {1.0,2.0,1.0,-3.0,4.0,-1.0};
double B[6] = {1.0,2.0,1.0,-3.0,4.0,-1.0};
double C[9] = {.5,.5,.5,.5,.5,.5,.5,.5,.5};
cblas_dgemm(CblasColMajor, CblasNoTrans, CblasTrans,3,3,2,1,A, 3, B, 3,2,C,3);
for(i=0; i<9; i++)
printf("%lf ", C[i]);
printf("\n");
printf("hello hihi\n");
}
which is an example from OpenBLAS. I am pretty sure I have statically compiled this file with following makefile command
test_cblas_dgemm: test_cblas_dgemm.c
@echo compiling $@
@gcc -static -I $(INCLUDE) -L. $< -o test_cblas_dgemm -lopenblas
@cp test_cblas_dgemm ~/progs/
The problem is that I can run the executable file on my ubuntu machine but it meet with fatal errors on the gem5 SE mode. The simulation output is like below
**** REAL SIMULATION ****
info: Entering event queue @ 0. Starting simulation...
warn: readlink() called on '/proc/self/exe' may yield unexpected results in various settings.
Returning '/home/hurui/progs/test_cblas_dgemm'
info: Increasing stack size by one page.
warn: ignoring syscall access(...)
fatal: syscall mbind (#237) unimplemented.
Memory Usage: 648616 KBytes
Anybody can help me out? Thanks.