forum.alglib.net

ALGLIB forum
It is currently Sun Nov 10, 2024 7:19 pm

All times are UTC


Forum rules


1. This forum can be used for discussion of both ALGLIB-related and general numerical analysis questions
2. This forum is English-only - postings in other languages will be removed.



Post new topic Reply to topic  [ 1 post ] 
Author Message
 Post subject: Compiler Switches doesnot work
PostPosted: Fri Nov 11, 2022 8:21 pm 
Offline

Joined: Fri Nov 11, 2022 8:06 pm
Posts: 1
Hello.
In manual.cpp for AlgLib 3.19.0 it's writtren
"If one needs a SIMD-capable application with portability guarantees, one has to:
•#define AE_CPU=AE_INTEL preprocessor symbol at the global level
•compile kernels_fma.cpp with SSE2/AVX2/FMA support enabled at the compiler level
...
It is possible to selectively disable a SIMD instruction set of your choice by combining AE_CPU=AE_INTEL #definition with one of the following #defines:
•AE_NO_FMA to skip compilation of the FMA-capable kernels
•AE_NO_AVX2 to skip compilation of the AVX2/FMA-capable kernels
•AE_NO_SSE2 to skip compilation of all SSE2/AVX2/FMA SIMD kernels"

But when i use functions from linalg.h in Visual Studio Express 2015, compiler get many errors like "undefined symbol _ABLASF_KERNEL_SIZE1" and so on. Using compiler switch AE_NO_SSE2 doesnot help to resolve this problem. When i define ALGLIB_NO_FAST_KERNELS to switch off SIMD instruction or _ALGLIB_IMPL_DEFINES to switch them on, example from demo.cpp (4.5.2 Compiling under Windows) execute in both cases. May I use this switchs safely? If not - help me, please, to find right way.


Top
 Profile  
 
Display posts from previous:  Sort by  
Post new topic Reply to topic  [ 1 post ] 

All times are UTC


Who is online

Users browsing this forum: No registered users and 4 guests


You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot post attachments in this forum

Search for:
Jump to:  
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group