- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Is it possible to have a 64-bit work array with sgesvd? Since the lwork parameter is a signed 32-bit integer, this does not seem possible, but maybe there is a similar function I am overlooking.
Link Copied
4 Replies
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - schmmd
Is it possible to have a 64-bit work array with sgesvd? Since the lwork parameter is a signed 32-bit integer, this does not seem possible, but maybe there is a similar function I am overlooking.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - tim18
The ilp64 library version (not available for ia32) presumably has a 64-bit work array. Maybe that's not what you are asking.
I don't think this is a problem with the actual library but rather with the header file. I need to specify the length of the work array and I can only send in an "int" with sgesvd. Moreover, all the libraries use the same header files. So I think that if I use sgesvd I am forced to only send a 32-bit int.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
We got a confirmation in an earlier thread of some errors in the headers for ilp64, where all integers are 64-bit.
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Quoting - schmmd
Is it possible to have a 64-bit work array with sgesvd? Since the lwork parameter is a signed 32-bit integer, this does not seem possible, but maybe there is a similar function I am overlooking.
Hello,
do you mean your problem size is so huge that the space needed for work array doesn't fit to 32-bit space? Then there are several options:
a) if you're workingwith 32-bit MKL the only way is to reduce workspace amount: the minimal workspace needed is max(3*min(m, n)+max(m, n), 5*min(m,n)) of floats, I don't believe the linear size of your problem is so huge not tofit the minimal workspace into 32-bit.
b) if you're working with 64-bit MKL you may reduce your workspace according to a) in case you need only LP64 model; or you may switch to ILP64 model where lwork is 64-bit.
Or do you mean something different?
Michael.

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