- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
I'm trying to compile and run code with ifort linking MKL on a Mac Pro running Leopard. The code compiles fine, but when run it terminates with an "Illegal instruction" message when it calls dgemv. The same code compiles and runs without problem on my Macbook Pro running Tiger. I'm stumped.
Has anyone run into the same problem or know how to resolve it?
Cheers,
Jonathan
Link Copied
3 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Jonathan,
what mkl version you are using? And what is your linking line?
--Gennady?
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - Gennady Fedorov (Intel)
Jonathan,
what mkl version you are using? And what is your linking line?
--Gennady?
I'm using MKL version 10.0.5 with ifort 10.1 (I tried with ifort 11.0 with the same results)
The relevant lines in my Makefile for the linking are below:
MKLLIB=/Library/Frameworks/Intel_MKL.framework/Versions/10.0.5.025/lib/em64t
MKLINC=/Library/Frameworks/Intel_MKL.framework/Versions/10.0.5.025/include
LAPACK = -L$(MKLLIB) -lmkl_lapack -lmkl_intel_lp64 -lmkl_core -lguide -lpthread
F90 = ifort
FFLAGS = -O2
INCS = -I. -I$(CFITSIO)/include -I$(MKLINC)
LIBS = -L. -L$(CFITSIO)/lib -lcfitsio $(LAPACK)
test: $(OBJS) test.o
$(F90) $(FFLAGS) $(INCS) -o $@ test.o $(OBJS) $(LIBS)
Thanks!
Jonathan
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - jpritchardcfa.harvard.edu
LAPACK = -L$(MKLLIB) -lmkl_lapack -lmkl_intel_lp64 -lmkl_core -lguide -lpthread
F90 = ifort
FFLAGS = -O2
INCS = -I. -I$(CFITSIO)/include -I$(MKLINC)
LIBS = -L. -L$(CFITSIO)/lib -lcfitsio $(LAPACK)
I would be more comfortable with
LAPACK= -lmkl_intel_lp64 -lmkl_core -lmkl_thread
FFLAGS = -O2 -openmp
as you said you were using an ifort which should have its own MKL installation.
The most worrisome part is your attempt to link both 32-bit and 64-bit integer data support. You can't have it both ways.

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page