I have downloaded the mic 0.3 version of Magma.
A couple of minor comments: the README indicates that the make.inc file should be modified prior to issuing make, which will create libmicmagma.a and libmicmagmablas.a. However these files were included in the distribution file, so make then reports there is nothing to do. It also says that file magma_mic_server should be copied to the mic, but this file does not exist. Typing make in the server directory resolves this.
We upgraded MPSS recently from MPSS 2.1.3653-8 to MPSS 2.1.4982-15. With the old version, magma_init gave 'scif_connect success', but after the upgrade 'scif_connect failed with error 0' was displayed, although execution continued successfully in both cases. interface.cpp contains the test: ' if ((scif_connect(gEpd, &portID)) != 0)'. However if scif_connect is successful, it will return the port number which is non-zero, so the test will be true. scif_connect returns -1 on failure, so changing the '!= 0' to '< 0' would resolve the issue (the scif_open test a few lines above in the code uses '< 0'). I am assuming a change in scif_connect return values with the upgrade, but cannot confirm this. If this is not the case I have no explanation.
Routines with a mic interface (mic appended to the routine name) perform very well. Of those without a mic interface, dgemm also performs very well, but dgehrd does not: < 15 GFlop/s for sizes up to 7000. I am not sure what to expect for dgehrd, nor how much difference a mic interface might be expected to make to the performance. Any information on this would be much appreciated.
Do you have any information about future developments of the mic version, in particular about the implementation of dgesvd?