Comments (6)
Hi Ian, thanks for your feedback. I can't immediately reproduce any issues with test/test_gemm_blis.x
. I assume you mean you were using the sandybridge
configuration? Have you tried the reference
configuration? Also, what kind of hardware are you on? First thing to check is that this is not a 32/64-bit integer issue. The new default is 64, unless the configuration's bli_config.h
file overrides it.
Also, SIGILL--illegal instruction--is different than a segementation fault. Maybe you could clarify.
from blis.
Hi fgvanzee.
Yes, you're correct - I hope my edits have clarified what I was asking.
As suggested using reference
has fixed my issue (hooray),
For what it's worth, my processor is an Intel® Core™ i7-4770.
Thanks for the help
from blis.
Don't take this the wrong way, but I am having trouble believing that the problem truly is with the invocation of bli_obj_create_const(2.0, &BLIS_TWO);
in bli_const_init()
. That code should be completely portable, and does not change as a function of the chosen configuration. My gut tells me fingers should be pointed at your compiler, or at least the way it is compiling the code. Which are you using, and what version?
Also, would you be willing to trace the SIGILL even further? If you don't want to dork around with the debugger, just insert some printf( ... ); fflush( stdout )
. Is it happening inside of bli_obj_create_const()
? Or at the function call? The only thing special about that point in the code is that it is the first time a BLIS function is called with a non-empty list of function parameters. So it could be a 32/64-bit pointer issue.
from blis.
I reckon it's also related to the first non-empty function parameters.
I'm using I'm using gcc version: (Ubuntu 4.8.2-19ubuntu1) 4.8.2
during my gdb session earlier it was occuring when the function was being called, rather than inside it.
I can try build it with an override of 32bit on the sandybridge configuration to test - I'm not entirely sure what line to include though
from blis.
The only thing you can adjust in bli_config.h
is the size of an int, via:
#define BLIS_INT_TYPE_SIZE 32
#define BLIS_INT_TYPE_SIZE 64 // this is the default and thus not explicitly needed
If it's a pointer size issue, that will require adjusting compiler flags in config/.../make_defs.mk
. I don't recall the flags for doing that in gcc
off hand. Try Googling the issue and see what comes up.
from blis.
Closing this issue due to lack of activity. Please reopen if appropriate.
from blis.
Related Issues (20)
- Header path for default source build and Debian should match HOT 6
- bli_gemmsup_rd_haswell_asm_d6x8m.c:1296:1:error:bp cannot be used in ams here HOT 3
- New release? HOT 6
- A more complete list of ARM cpu implementations
- arm64 cpu identification is not portable to BSDs HOT 3
- inconsistence between documentation and code for bli_?trmm3 HOT 5
- What is the best way to debug BLIS? HOT 2
- GPU support and PortBLAS HOT 4
- getting error as illegal instruction HOT 4
- Support compiler names with spaces HOT 1
- Regarding Default Behaviour for CPU Affinity HOT 4
- BF16 on AMD CPU? HOT 4
- Upstream BLIS patches for ARM SVE? HOT 5
- Memory location in the prefetch instructions HOT 5
- Facing issue when running following command: pip install --upgrade --no-cache-dir thinc HOT 1
- AMD FX(tm)-6300 Six-Core Processor piledriver errors with check HOT 4
- errors with scalapack due to [cz]symv and [cz]syr interfaces HOT 10
- Not possible to link Blis and Lapack statically into the same executable HOT 12
- Follow up on https://github.com/flame/blis/issues/811, remaining error in out.zblat3.txt after applying fix #814 HOT 4
- LAPACK test segfault on zen/zen2/zen3 at bli_sgemmsup_rd_haswell_asm_1x16n HOT 16
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from blis.