Giter Site home page Giter Site logo

avtechscientific / asl Goto Github PK

View Code? Open in Web Editor NEW
212.0 28.0 54.0 24.66 MB

Advanced Simulation Library - hardware accelerated multiphysics simulation platform.

Home Page: http://asl.org.il

License: GNU Affero General Public License v3.0

CMake 2.72% C++ 97.14% C 0.13%
computational-fluid-dynamics virtual-sensing image-guided-surgery computer-aided-engineering crystallography design-space-exploration scientific-computing gpgpu high-performance-computing

asl's Introduction

For more information, please visit http://asl.org.il.

ASL

Advanced Simulation Library (ASL) is a free and open source hardware accelerated multiphysics simulation platform (and an extensible general purpose tool for solving Partial Differential Equations). Its computational engine is written in OpenCL and utilizes matrix-free solution techniques which enable extraordinarily high performance, memory efficiency and deployability on a variety of massively parallel architectures, ranging from inexpensive FPGAs, DSPs and GPUs up to heterogeneous clusters and supercomputers. The engine is hidden entirely behind simple C++ classes, so that no OpenCL knowledge is required from application programmers. Mesh-free, immersed boundary approach allows one to move from CAD directly to simulation drastically reducing pre-processing efforts and amount of potential errors. ASL can be used to model various coupled physical and chemical phenomena and employed in a multitude of fields: computational fluid dynamics, virtual sensing, industrial process data validation and reconciliation, image-guided surgery, computer-aided engineering, design space exploration, crystallography, etc..

License

ASL is distributed under the free GNU Affero General Public License (AGPLv3) with an optional commercial license.

Support

Professional consulting, training and integration services are provided by Avtech Scientific, whose team created and continues to extend the library. The company offers innovative R&D solutions and is involved in diverse academic and industrial collaborative projects dealing with complex multidisciplinary problems.

Quick Start

Installation

  1. Install cmake (>=3.0.2, BSD License) and the required libraries:
  2. Download and extract the ASL source code archive.
  3. Create a build directory: mkdir build-asl && cd build-asl
  4. Use cmake generator to produce Makefiles: cmake -G "Unix Makefiles" ../ASL or project files for your IDE (Visual Studio, Xcode, Eclipse, etc.): cmake -G "Visual Studio 10" ../ASL
  5. Run make (as root if installing into default destination /usr/local): make install

Running an example

  1. Go to examples: cd examples/flow/locomotive
  2. Download geometry file locomotive.stl from the ASL input data page.
  3. Run: ./asl-locomotive --input locomotive.stl
    Optionally: change parameters ./asl-locomotive --input locomotive.stl --dx 1 --dt 2 or write all of them into a file for later editing/reuse - ./asl-locomotive -g bigGrid.ini. List all available options - ./asl-locomotive -h.
  4. Post-processing: see step by step example and locomotive.pvsm - the ParaView state file.

Writing your own code using ASL

  1. Take a look on examples and the API documentation, start with examples/flow/locomotive.cc
  2. ASL installation supplies ASL.pc and ASLConfig.cmake files. To build your program using:
  • pkg-config: c++ `pkg-config --cflags --libs ASL` -std=c++11 -o flow flow.cc
  • cmake: write a basic CMakeLists.txt file:
project(locomotive)
cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR)
find_package(ASL 0.1.6 CONFIG REQUIRED)
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++11")
add_executable(locomotive locomotive.cc)
target_link_libraries(locomotive PRIVATE ASL::aslnum ASL::aslvtk ASL::asl)

asl's People

Contributors

arcan1s avatar avtechscientific avatar barthalion avatar cyclaero avatar ghisvail avatar metorm avatar opoplawski avatar stefanbruens avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

asl's Issues

This library package calls exit()

[ 258s] ASL.x86_64: W: shared-lib-calls-exit
/usr/lib64/libaslCommon.so.0.1.2 exit@GLIBC_2.2.5
[ 258s] This library package calls exit() or _exit(), probably in a non-fork()
[ 258s] context. Doing so from a library is strongly discouraged -
when a library
[ 258s] function calls exit(), it prevents the calling program from
handling the
[ 258s] error, reporting it to the user, closing files properly, and
cleaning up any
[ 258s] state that the program has. It is preferred for the library
to return an
[ 258s] actual error code and let the calling program decide how to handle the
[ 258s] situation.

manpage for asl-hardware

Debian, and other Linux distributions, requires that all executables ship with a corresponding manpage. Please consider providing one.

master build fails with VTK 7.1.0 RC1

Testing with VTK 7.1.0 RC1 I get:

[ 74%] Linking CXX executable multicomponent_flow/asl-multicomponent_flow
cd /builddir/build/BUILD/ASL-248ad2de1fcddffd38405008779fb1ee292184e6/build-x86-32.fc26/examples/flow && /usr/bin/cmake -E cmake_link_script CMakeFiles/multicomponent_flow.dir/link.txt --verbose=1
/usr/bin/c++   -O2 -g -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -fexceptions -fstack-protector-strong --param=ssp-buffer-size=4 -grecord-gcc-switches -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -m32 -march=i686 -mtune=atom -fasynchronous-unwind-tables -fpermissive   -Wl,-z,relro -specs=/usr/lib/rpm/redhat/redhat-hardened-ld  CMakeFiles/multicomponent_flow.dir/multicomponent_flow.cc.o  -o multicomponent_flow/asl-multicomponent_flow -Wl,-rpath,/builddir/build/BUILD/ASL-248ad2de1fcddffd38405008779fb1ee292184e6/build-x86-32.fc26/src/num:/builddir/build/BUILD/ASL-248ad2de1fcddffd38405008779fb1ee292184e6/build-x86-32.fc26/src:/builddir/build/BUILD/ASL-248ad2de1fcddffd38405008779fb1ee292184e6/build-x86-32.fc26/src/acl: -rdynamic ../../src/num/libaslnum.so.0.1.7-dev ../../src/libaslvtk.so.0.1.7-dev ../../src/libasl.so.0.1.7-dev ../../src/acl/libaslacl.so.0.1.7-dev ../../src/libaslcommon.so.0.1.7-dev -lOpenCL 
../../src/libaslvtk.so.0.1.7-dev: undefined reference to `vtkSTLReader::New()'
collect2: error: ld returned 1 exit status
make[2]: *** [examples/flow/CMakeFiles/multicomponent_flow.dir/build.make:104: examples/flow/multicomponent_flow/asl-multicomponent_flow] Error 1

It appears that this may have been moved to libvtkIOGeometry, but perhaps this isn't being brought in automatically any more by internal VTK dependencies. Full build logs are here: https://copr-be.cloud.fedoraproject.org/results/orion/vtk7/fedora-rawhide-i386/00469812-libASL/build.log.gz

I'll try to have a PR soon.

Missing upstream changelog

P: libasl0: no-upstream-changelog

Debian reports a missing upstream changelog. This would be desirable (but not essential) to have somewhere at the root of the source tree, in a NEWS or CHANGELOG / ChangeLog file.

std::logic_error when running examples

Hi there,
I'm getting the following error whenever I try to run an example:

$ locomotive ./asl-locomotive terminate called after throwing an instance of 'std::logic_error' what(): ASL ERROR: acl::Platform::getDevices() (-1). [1] 2565 abort (core dumped) ./asl-locomotive

Any ideas why this is happening? I'm using the proprietary NVIDIA drivers (with bumblebee) on Fedora 24. Both the version from the repos and my own build have the same problem.

Thanks,
James

asl-locomotive error using vtk7.1.1

Hello,
I have just successfully compiled VTK7.1.1 and ASL. But when I try to run asl-locomotive as shown in the Quick Start I get this error:

mik@mikPC:~/ASL$ asl-locomotive --input locomotive.stl --dx 1 --dt 2
asl-locomotive: error while loading shared libraries: libvtkIOGeometry-7.1.so.1: cannot open shared object file: No such file or directory

I used VTK version 7.1.1 (downloaded from here), no errors during cmake nor make -j4.

However there were a few errors when complling ASL. I used cmake -D VTK_DIR=../VTK-build/ -G "Unix Makefiles" ../ASL to build ASL.
These were the errors, since they mention opencl.h I do not consider them to be related to this.
sample_errors.txt

I also tried other versions of VTK (libvtk6 from Ubuntu repos, libvtk6.3, compiled 7.0.0, this 7.1.1 and even 8.x.x RC ... none of them however got me this far)

My system is Ubuntu 17.04 64bit.

Source files without copyright information

licensecheck -r . | grep "No copyright"
./src/pics/grids/2Dconcatination.tex: No copyright UNKNOWN

Please add a suitable copyright header to the source files listed above.

Cannot downconvert and widen scalar type 'double' to vector type '__float4' running examples

Hi guys,

I just compiled ASL on my machine (macbook pro) following the instruction successfully. However, once I run the exmples, I get the following error:

Cannot downconvert and widen scalar type 'double' to vector type '__float4'
libc++abi.dylib: terminating with uncaught exception of type std::logic_error: ASL ERROR: Program::build() (-11).

And I tried every example, and get the same error. Is this an OpenCL issue? Does anybody knows how to solve it?

best,
Siming

Lack of instructions aimed to run a file with cc-extension when the source of acquisition of ASL is not the source repository

OS: Fedora. Components covering ASL 0.1.7 acquired from a Fedora's repository.

Installed components:

$ dnf -q rq --installed --archlist noarch,x86_64 --qf '%{name} %{version} %{arch} %{summary}' libasl*
libASL 0.1.7 x86_64 ASL hardware accelerated multiphysics simulation platform
libASL-bin 0.1.7 x86_64 Binaries for libASL
libASL-doc 0.1.7 x86_64 Documentation for libASL
libASL-examples 0.1.7 x86_64 Examples for libASL

Hello. Location paths of binaries and files with cc-extension supplied by libASL-examples are respectively /usr/bin/ and /usr/share/doc/libASL-examples. Here though, the obvious is noticeable: the instructions covering the methodology to run a file given as example cannot be applied to an installation whose source is not the present repository. Hence unknown are the instructions to run that locomotive.cc.

multiple GPUS

Dear everyone
does anyone know, how can I setup case which can run on multiple GPUs, especially a cluster with distributed GPUs machines.

Thanks

Compilation warnings with the newest libmatio

Hi,

With the newest libmatio I've faced with the following compilation warnings:

Scanning dependencies of target aslmatio
[ 47%] Building CXX object src/CMakeFiles/aslmatio.dir/utilities/aslMATLABCasters.cxx.o
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx: In instantiation of โ€˜matvar_t* matiocpp::Var::init(T*, const asl::AVec<int>&, const string&) [with T = double; matvar_t = matvar_t; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:93:19:   required from โ€˜matiocpp::Var::Var(T*, unsigned int, const string&, bool) [with T = double; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:116:62:   required from here
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_classesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 2 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_typesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 3 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx: In instantiation of โ€˜matvar_t* matiocpp::Var::init(T*, const asl::AVec<int>&, const string&) [with T = float; matvar_t = matvar_t; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:93:19:   required from โ€˜matiocpp::Var::Var(T*, unsigned int, const string&, bool) [with T = float; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:122:62:   required from here
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_classesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 2 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_typesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 3 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx: In instantiation of โ€˜matvar_t* matiocpp::Var::init(T*, const asl::AVec<int>&, const string&) [with T = int; matvar_t = matvar_t; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:93:19:   required from โ€˜matiocpp::Var::Var(T*, unsigned int, const string&, bool) [with T = int; std::__cxx11::string = std::__cxx11::basic_string<char>]โ€™
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:128:62:   required from here
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_classesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 2 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:76:22: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_typesโ€™ [-fpermissive]
  return Mat_VarCreate(name.c_str(),
                      ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/utilities/aslMATLABCasters.cxx:33:0:
/usr/include/matio.h:258:19: note:   initializing argument 3 of โ€˜matvar_t* Mat_VarCreate(const char*, matio_classes, matio_types, int, size_t*, void*, int)โ€™
 EXTERN matvar_t  *Mat_VarCreate(const char *name,enum matio_classes class_type,
                   ^
[ 47%] Building CXX object src/CMakeFiles/aslmatio.dir/writers/aslMATFormat.cxx.o
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx: In function โ€˜void asl::writeMAT(const string&, const asl::AbstractData&, const string&)โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:49:35: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_compressionโ€™ [-fpermissive]
   Mat_VarWrite(matFile,var->var, 0);
                                   ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:26:0:
/usr/include/matio.h:300:19: note:   initializing argument 3 of โ€˜int Mat_VarWrite(mat_t*, matvar_t*, matio_compression)โ€™
 EXTERN int        Mat_VarWrite(mat_t *mat,matvar_t *matvar,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx: In function โ€˜void asl::writeMAT(const string&, std::vector<std::pair<std::shared_ptr<asl::AbstractData>, std::__cxx11::basic_string<char> > >)โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:66:36: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_compressionโ€™ [-fpermissive]
    Mat_VarWrite(matFile,var->var, 0);
                                    ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:26:0:
/usr/include/matio.h:300:19: note:   initializing argument 3 of โ€˜int Mat_VarWrite(mat_t*, matvar_t*, matio_compression)โ€™
 EXTERN int        Mat_VarWrite(mat_t *mat,matvar_t *matvar,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx: In function โ€˜void asl::writeMAT(const string&, std::vector<std::pair<std::shared_ptr<acl::ElementBase>, std::__cxx11::basic_string<char> > >)โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:78:36: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_compressionโ€™ [-fpermissive]
    Mat_VarWrite(matFile,var->var, 0);
                                    ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:26:0:
/usr/include/matio.h:300:19: note:   initializing argument 3 of โ€˜int Mat_VarWrite(mat_t*, matvar_t*, matio_compression)โ€™
 EXTERN int        Mat_VarWrite(mat_t *mat,matvar_t *matvar,
                   ^
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx: In function โ€˜void asl::writeMAT(const string&, asl::Probe&, unsigned int, const string&)โ€™:
/home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:89:35: warning: invalid conversion from โ€˜intโ€™ to โ€˜matio_compressionโ€™ [-fpermissive]
   Mat_VarWrite(matFile,var->var, 0);
                                   ^
In file included from /home/arcanis/libasl/src/ASL-0.1.6/src/writers/aslMATFormat.cxx:26:0:
/usr/include/matio.h:300:19: note:   initializing argument 3 of โ€˜int Mat_VarWrite(mat_t*, matvar_t*, matio_compression)โ€™
 EXTERN int        Mat_VarWrite(mat_t *mat,matvar_t *matvar,
                   ^
[ 48%] Linking CXX shared library libaslmatio.so

Most of them are talking about invalid conversion from int to matio_*. Build environment:

gcc-5.3.0
libmatio-1.5.6
libasl from tarball (0.1.6)

--device parameter on the command line not recognized

I am testing ASL on a Mac mini late 2014 with Intel Iris graphics hardware running macOS 10.12.6.

./asl-flow --devices outputs:

flow 1.0

Default computation device:
platform = Apple๏ฟฝ
device = Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz๏ฟฝ

List of all available platforms and their devices:
Platform: Apple๏ฟฝ
Number of devices: 2
	Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz๏ฟฝ
	Iris๏ฟฝ

Now, trying to invoke the flow example with ./asl-flow --device Iris gives:

ASL WARNING: Requested combination of platform(Apple๏ฟฝ) and device(Iris) not found! Using:
platform = Apple๏ฟฝ
device = Intel(R) Core(TM) i5-4278U CPU @ 2.60GHz๏ฟฝ.
Data initialization... Finished
Numerics initialization... Finished
Computing...Finished
Computation statistic:
Real Time = 26.8742; Processor Time = 98.7167; Processor Load = 367.329%

I found out, that the strings of the platform/device information contain trailing '\0' chars, while the parameter strings as delivered by boost do not, and the comparison (device == getDeviceName(queues[i])) on line 106 in aclHardware.cxx fails, since "Iris\0" is different from "Iris".

I changed the lines 501/502 in aslParametersManager.cxx to:

			string pf = vm["platform"].as<string>(); if (pf.back() != '\0') pf += '\0';
			string dv = vm["device"  ].as<string>(); if (dv.back() != '\0') dv += '\0';
			acl::hardware.setDefaultQueue(pf, dv);

And with that in place I can have ASL simulation run by the GPU.

Data initialization... Finished
Numerics initialization... Finished
Computing...Finished
Computation statistic:
Real Time = 13.3571; Processor Time = 1.27338; Processor Load = 9.53341%

EDIT: Now, seeing this issue message, I guess it would be better to remove the trailing '\0' chars from the strings of the platform/device information, since, quite obviously these nul's made it into the diagnostic output of the simulation tools.

BTW: The locomotive example with the default parameters 0.08/1.0/10001 crashes when run on the GPU, while it finishes on the CPU. If I change dx to 0.09, then it finishes on the GPU as well after 1200ย s, while it took 20 times more on the CPU at a load of 400 %.

Does ASL have the function to parallel calculating๏ผŸ

Hello๏ผŒthe Avtech scientists. I'm very interested in LBM and ASL software.I have browsed the feature introuction and the source code of ASL,but I haven't see anything about MPI. Could this software running with large number of CPU nodes๏ผŸ

Small problem causes โ€œcall to 'select' is ambiguousโ€ in all level set examples

I am testing the level set examples provided with the source.
However, all level set examples: levelSetBasic levelSetFacetedGrowth levelSetNormalGrowth gives run time error:

			BUILD LOG
 ************************************************
<kernel>:239:10: error: call to 'select' is ambiguous
        (pv_f64=select((pv_f64/1.8000000000000000444), (pv_f64/(1. - pv_f64)), (pv_f64*pv_f4<0)));
                ^~~~~~
cl_kernel.h:16067:23: note: candidate function
int __OVERLOADABLE__  select(int a, int b, int c);
                      ^
cl_kernel.h:16073:24: note: candidate function
uint __OVERLOADABLE__  select(uint a, uint b, int c);
                       ^
[below is all those overload versions of the select function]

and the kernel source being compiled is:

			KERNEL SOURCE CODE
 ------------------------------------------------
#pragma OPENCL EXTENSION cl_khr_fp64 : disable

__kernel void compute_1(__global float *a_f2,
                        __global float *a_f1)
{
	uint index = get_glterminate called after throwing an instance of 'std::logic_error'
obal_id(0);
	float pv_f4;
	float pv_f9;

...

	(pv_f64=select((pv_f64/1.8000000000000000444), (pv_f64/(1. - pv_f64)), (pv_f64*pv_f4<0)));
	a_f2[(index+10507)] = select((float)(pv_f64), (float)(sign(pv_f4)), (int)(((pv_f65+pv_f67)<0.10000000000000000555)));
}
 ------------------------------------------------

it seems that in the last line, pv_f64=select((pv_f64/1.8000000000000000444), (pv_f64/(1. - pv_f64)), (pv_f64*pv_f4<0)), a type indicator is requird.
I believe this is easy to fix, but I don't know where to find the code which generated the above OpenCL kernel. I am new to ASL yet.
Someone please fix this or tell me where to start to fix this?

missing copyright information

The following files have missing copyright information.

./cmake/ASLBuildFunctions.cmake: *No copyright* UNKNOWN
./cmake/ASLBuildOptions.cmake: *No copyright* UNKNOWN
./cmake/ASL.pc.cmake.in: *No copyright* UNKNOWN
./cmake/ASLPaths.cmake: *No copyright* UNKNOWN
./cmake/ASLConfig.cmake.in: *No copyright* UNKNOWN
./doc/Developer-Guide/Doxyfile.cmake.in: *No copyright* UNKNOWN

Please consider updating these files with an appropriate copyright header.

Local CMakeParseArguments breaks with vtk 9.1

The inclusion of local CMakeParseArguments breaks with vtk 9.1:

CMake Error at /usr/lib64/cmake/vtk/vtkDetectLibraryType.cmake:23 (message):
  The `PATH` argument is required.
Call Stack (most recent call first):
  /usr/lib64/cmake/vtk/patches/99/FindHDF5.cmake:1066 (vtk_detect_library_type)
  /usr/lib64/cmake/vtk/VTK-vtk-module-find-packages.cmake:397 (find_package)
  /usr/lib64/cmake/vtk/vtk-config.cmake:150 (include)
  CMakeLists.txt:56 (find_package)

Which --trace indicates was triggered by the usage of the local CMakeParseArguments.cmake. I think it's time to require cmake 3.1 and drop the local FindOpenCL and deps.

Could not configure ASL in CMake

Hi all,
I am on generating VS 12 project files from cmake gui, I have configured the paths of Boost and openCL but I could not set the VTK_DIR, it turns back to VTK_DIR-NOT FOUND every time i click configure, but surprisingly I use the same path for building VTK applications and I face no problem in that. Please help me out.

Mesh free and immersed boundary method

Hi, can someone tell me what kinds of mesh free method and immersed boundary method that ASL implements ? I can't find the reference in user guide.

Best Regrads.

tests linking fails when LDFLAGS contain "-Wl,--as-needed"

Hi,

with --as-needed in LDFLAGS (default it Gentoo) tests fail to link:

cd /var/tmp/portage/sci-libs/asl-0.1.5-r1/work/asl-0.1.5_build/test/testACL && /usr/bin/cmake -E cmake_link_script CMakeFiles/testMatrixOfElements.dir/link.txt --verbose=1
/usr/lib64/ccache/bin/x86_64-pc-linux-gnu-g++   -O2 -pipe  -fpermissive  -Wno-deprecated   -Wl,--as-needed  CMakeFiles/testMatrixOfElements.dir/testMatrixOfElements.cc.o  -o testMatrixOfElements -rdynamic ../../src/libasl.so.0.1.5 ../../src/acl/libaslacl.so.0.1.5 ../../src/acl/Operators/libaslacloperators.so.0.1.5 ../../src/acl/aclMath/libaslaclmath.so.0.1.5 -lOpenCL ../../src/math/libaslmath.so.0.1.5 ../../src/data/libasldata.so.0.1.5 ../../src/libaslcommon.so.0.1.5
../../src/math/libaslmath.so.0.1.5: undefined reference to `asl::generateDataContainer_SP(asl::Block const&, acl::VectorOfElements const&, unsigned int)'
../../src/math/libaslmath.so.0.1.5: undefined reference to `asl::offset(asl::Block const&, int)'
collect2: error: ld returned 1 exit status
test/testACL/CMakeFiles/testMatrixOfElements.dir/build.make:102: recipe for target 'test/testACL/testMatrixOfElements' failed

This happens due to incorrect order of library arguments: libasl.so.0.1.5 should follow libaslmath.so.0.1.5 because libaslmath uses symbols from libasl.

On the other hand testACL/CMakeLists.txt contains:

target_link_libraries(testMatrixOfElements aslacl aslmath asldata asl)

which looks valid (asl is the last library on the list).

This problem starts with >=cmake-3.1.0: for 3.0.2 such problem is not reproducible, for 3.1.0 and later versions it takes place. Current version of cmake used for the build is 3.3.0.

Full build log is available here:
https://bpaste.net/show/56abb9c2f641

Crash with Intel driver when default device is AMD

The "known" bug that causes a segfault when used with the Intel driver WITH Intel graphics - seems to happen even while the default device/platform is the dedicated GPU (AMD Radeon HD 8850M) running xf86-video-ati/mesa-cl. Even when the user adds --platform and --device arguments, it still accesses the Intel GPU opencl (checked by doing strace):

access("/opt/intel/opencl-sdk/lib64/clbltfnl9_img_cbk.o", F_OK) = 0
open("/opt/intel/opencl-sdk/lib64/clbltfnl9_img_cbk.o", O_RDONLY) = 3

The cause of the segfault is the same as the one in the "known issue" page.

examples and tests as standalone CMake projects

From a (distribution) CI perspective, it would be desirable to build the examples and tests against the packaged version of the ASL libraries. With the CMake targets you defined in the root CMakeLists.txt, it should be fairly straightforward to do, by just adding:

cmake_minimum_required(VERSION 3.0.2 FATAL_ERROR)
project(ASL-examples) # project(ASL-tests)

find_package(ASL REQUIRED)

to examples/CMakeLists.txt and test/CMakeLists.txt, and replacing the target names in subsequent target_link_libraries calls with their respective ASL::<target> aliases.

OpenCL 1.0 support library

Could you provide a library just for OpenCL 1.0 support ? Intel Altera OpenCL only supports OpenCL 1.0.

Thanks,
-z

So I have the following errors during the build
CMakeFiles/asl-hardware.dir/asl-hardware.cc.o: In function cl::detail::ReferenceHandler<_cl_device_id*>::retain(_cl_device_id*)': asl-hardware.cc:(.text._ZN2cl6detail16ReferenceHandlerIP13_cl_device_idE6retainES3_[_ZN2cl6detail16ReferenceHandlerIP13_cl_device_idE6retainES3_]+0x14): undefined reference to clRetainDevice'
CMakeFiles/asl-hardware.dir/asl-hardware.cc.o: In function cl::detail::ReferenceHandler<_cl_device_id*>::release(_cl_device_id*)': asl-hardware.cc:(.text._ZN2cl6detail16ReferenceHandlerIP13_cl_device_idE7releaseES3_[_ZN2cl6detail16ReferenceHandlerIP13_cl_device_idE7releaseES3_]+0x14): undefined reference to clReleaseDevice'
../src/acl/libaslacl.so.0.1.7: undefined reference to `clCreateSubBuffer'
collect2: error: ld returned 1 exit status

Support VTK 8.1

Trying to build with VTK 8.1.1:

BUILDSTDERR: CMake Error at CMakeLists.txt:58 (find_package):
BUILDSTDERR:   Could not find a configuration file for package "VTK" that is compatible
BUILDSTDERR:   with requested version "7.0".
BUILDSTDERR:   The following configuration files were considered but not accepted:
BUILDSTDERR:     /usr/lib64/cmake/vtk/VTKConfig.cmake, version: 8.1.1
BUILDSTDERR:     /lib64/cmake/vtk/VTKConfig.cmake, version: 8.1.1

Segmentation fault

Hi, thank you for the software!

My platform: Intel(R) Core(TM) i7-3770K
Kernel: Linux 4.4.0-36-lowlatency #55-Ubuntu SMP PREEMPT Thu Aug 11 18:51:36 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux
Distro: Ubuntu 16.04.1 LTS

Compiled ASL as described in README.TXT

when try to run anything receive Segmentation fault

core dump shows:

Core was generated byutilities/asl-hardware'.
Program terminated with signal SIGSEGV, Segmentation fault.
#0 0x0000000000000000 in ?? ()

(gdb) bt
#0 0x0000000000000000 in ?? ()
#1 0x00007fdc2412bda1 in __gthread_once (__func=0x7fdc2412bd40 std::locale::_S_initialize_once(), __once=)

at /build/gcc-5-WCNom7/gcc-5-5.4.0/build/x86_64-linux-gnu/libstdc++-v3/include/x86_64-linux-gnu/bits/gthr-default.h:699

#2 std::locale::_S_initialize () at ../../../../../src/libstdc++-v3/src/c++98/locale_init.cc:316
#3 0x00007fdc2412bde3 in std::locale::locale (this=0x7fdc24409858 <__gnu_internal::buf_cout_sync+56>)

at ../../../../../src/libstdc++-v3/src/c++98/locale_init.cc:250

#4 0x00007fdc24128894 in std::basic_streambuf<char, std::char_traits >::basic_streambuf (this=)

at /build/gcc-5-WCNom7/gcc-5-5.4.0/build/x86_64-linux-gnu/libstdc++-v3/include/streambuf:466

#5 __gnu_cxx::stdio_sync_filebuf<char, std::char_traits >::stdio_sync_filebuf (__f=0x7fdc23e70620 <IO_2_1_stdout>, this=)

at /build/gcc-5-WCNom7/gcc-5-5.4.0/build/x86_64-linux-gnu/libstdc++-v3/include/ext/stdio_sync_filebuf.h:80

#6 std::ios_base::Init::Init (this=) at ../../../../../src/libstdc++-v3/src/c++98/ios_init.cc:85
#7 0x00007fdc2461c852 in __static_initialization_and_destruction_0(int, int) () from /home/mark/opt/build-asl/src/libaslcommon.so.0
#8 0x00007fdc2461c885 in _GLOBAL__sub_I_aslUtilities.cxx () from /home/mark/opt/build-asl/src/libaslcommon.so.0
#9 0x00007fdc24c0e4ea in call_init (l=, argc=argc@entry=1, argv=argv@entry=0x7ffe83f15fc8, env=env@entry=0x7ffe83f15fd8)

at dl-init.c:72

#10 0x00007fdc24c0e5fb in call_init (env=0x7ffe83f15fd8, argv=0x7ffe83f15fc8, argc=1, l=) at dl-init.c:30
#11 _dl_init (main_map=0x7fdc24e25168, argc=1, argv=0x7ffe83f15fc8, env=0x7ffe83f15fd8) at dl-init.c:120
#12 0x00007fdc24bfecfa in _dl_start_user () from /lib64/ld-linux-x86-64.so.2
#13 0x0000000000000001 in ?? ()
#14 0x00007ffe83f16774 in ?? ()
#15 0x0000000000000000 in ?? ()

`

Hardening compile flags wrongly exported in the pkgconfig file

Reported by Lintian:

E: libasl-dev: pkg-config-bad-directive usr/lib/x86_64-linux-gnu/pkgconfig/ASL.pc -Wno-deprecated
N:
N: The pkg-config file contains a wrong directive.
N:
N: The following file includes a wrong directive. This could lead to FTBFS
N: or leak private compile flags to another package.
N:
N: Severity: serious, Certainty: possible
N:
N: Check: files, Type: binary, udeb
N:
E: libasl-dev: pkg-config-bad-directive usr/lib/x86_64-linux-gnu/pkgconfig/ASL.pc -O2
E: libasl-dev: pkg-config-bad-directive usr/lib/x86_64-linux-gnu/pkgconfig/ASL.pc -g
E: libasl-dev: pkg-config-bad-directive usr/lib/x86_64-linux-gnu/pkgconfig/ASL.pc -D_FORTIFY_SOURCE=2

It seems that the hardening flags used by Debian are exported in the pkgconfig file due to the following line in ASL.pc.cmake.in:

Cflags: -I${includedir} @CMAKE_CXX_FLAGS@

One solution would be to store the ASL specific flags in a variable ASL_CXX_FLAGS, append it to CMAKE_CXX_FLAGS and use it for substitution in ASL.pc.cmake.in.

provide explicit licensing details for files under input_data

Still on the licensing topic, you guys mention in the COPYRIGHT.md.

Some examples require input files (like .vti or .stl) that can be found in input_data.

    All .stl files were originally obtained from GrabCAD and are subject to their Terms of Service; some of them were modified.
    brain.vti was generated using BrainWeb.

This information tells me where the files were obtained, not witch licensing terms these files are in. Please consider giving a short summary of the licensing for both the GrabCAD and BrainWeb data, since both are not straightforward to find.

On my brief reading of the GrabCAD terms of service, I felt that the licensing was very restrictive with regards to redistribution and commercial usage, which does not look compatible with the terms of the AGPL-3?

If licensing information cannot be determined accurately, then I will have to strip these data off prior to packaging.

Install examles on cmake install.

Hi,

right now if ASL is configured with examples enabled (default behaviour) examples are built, but not installed during cmake install phase. CMakeLists.txt for examples contain no installation instructions, please fix this.

It should be the best to install binaries together with their source code, so that users will be able to learn how they work.

The level set examples give strange and messed results

As I have mentioned in #36, I fixed the runtime error in level set examples.
However, All three relevant examples are giving strange and messed results than.
See the below pictures.

image
image
image
image

I tried default parameters as well as customer parameters, The results are all the same.

underlinked shared libraries

On building the binary packages for Debian, dpkg-shlibdeps threw a large amount of warnings related to missing symbols. This is most likely a consequence of underlinkage.

The following build options were used:

        -DCMAKE_BUILD_TYPE=RelWithDebInfo \
        -DBUILD_SHARED_LIBS=ON \
        -DWITH_EXAMPLES=OFF \
        -DWITH_MATIO=ON \
        -DWITH_API_DOC=ON \
        -DWITH_TESTS=ON

And the following warnings were generated:

dpkg-shlibdeps: warning: symbol _ZN3acl12KERNEL_BASICE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase8getQueueEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl24addElementToKernelSourceESt10shared_ptrINS_11ElementBaseEERSt6vectorIS2_SaIS2_EES6_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl12onSameDeviceESt10shared_ptrINS_11ElementBaseEES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl11ElementBaseD2Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase9getTypeIDEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl10isArgumentESt10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl11ElementBaseC2EbjNS_6TypeIDE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl10compatibleEjSt10shared_ptrIN2cl12CommandQueueEES0_INS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase24getAddressSpaceQualifierEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslacloperators.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 8 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIjEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl17getPlatformVendorERKSt10shared_ptrIN2cl12CommandQueueEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl8Hardware15setDefaultQueueERKSsS2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl8Hardware14getDevicesInfoEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIfEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl8hardwareE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIiEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIdEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol clReleaseCommandQueue used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl8Hardware20getDefaultDeviceInfoEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslcommon.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 3 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3asldvERKNS_10TemplateVEES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3aslmlERKNS_10TemplateVEES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl27generateDataContainerACL_SPERKNS_5BlockEN3acl6TypeIDEjjSt10shared_ptrIN2cl12CommandQueueEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVEC1Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3asl9VTObjects13getCellPointsEjRSt6vectorINS_4AVecIdEESaIS3_EE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl8vtObjectEPKNS_14VectorTemplateE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3asl18DataWithGhostNodesIN3acl20VectorOfElementsDataEE13getDContainerEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVEC1ERNS_26AbstractDataWithGhostNodesERKNS_14VectorTemplateEjb used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl18DataWithGhostNodesIN3acl20VectorOfElementsDataEE15getSubContainerEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl25Index2PositionDiscreteACLC1ERKNS_5BlockEb used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnum.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 43 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3acl6Kernel7computeEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl9NumMethodD2Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl5cloneESt10shared_ptrINS_18DataWithGhostNodesIN3acl20VectorOfElementsDataEEEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl16VectorOfElementsC1ERKNS_20VectorOfElementsDataE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol clReleaseContext used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVE8getValueEj used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3aclmlERKNS_16VectorOfElementsES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl19generateVEVariableRIdEENS_16VectorOfElementsERT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl14assignmentSafeERKNS_16VectorOfElementsES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVEC1ERNS_26AbstractDataWithGhostNodesERKNS_14VectorTemplateEjb used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslnumext.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 21 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3acl10isMemBlockESt10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN5boost6system16generic_categoryEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIdEEvSt10shared_ptrINS_11ElementBaseEEPT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase7getSizeEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIiEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl8MemBlock3mapEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl9typeToStrIjEERKSsv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK5boost10filesystem4path9extensionEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIiEEvPT_St10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4TYPEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslvtk.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 19 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3acl11ElementBaseD2Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl6Kernel15setGroupsNumberEj used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase9getTypeIDEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl16elementOperators18operatorAssignmentESt10shared_ptrINS_11ElementBaseEES3_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl16elementOperators3absESt10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl16elementOperatorsdvESt10shared_ptrINS_11ElementBaseEES3_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl18generateVEConstantIiEENS_16VectorOfElementsERKN3asl4AVecIT_EE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl25generateVEPrivateVariableEjNS_6TypeIDE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl9TimeStamp6tsTimeE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl11KERNEL_SIMDE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslaclmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 101 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3aclmiIN3asl4AVecIdEEEENS_16VectorOfElementsERKS4_RKT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVE4initERNS_26AbstractDataWithGhostNodesERKNS_14VectorTemplateEjb used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl11interpolateERKNS_10TemplateVEEN3acl16VectorOfElementsE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl20VectorOfElementsDataC1Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3aclplIN3asl4AVecIiEEEENS_16VectorOfElementsERKS4_RKT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3aclplERKNS_16VectorOfElementsES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl10TemplateVEC1Ev used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl6KernelC1ENS_19KernelConfigurationE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIiEEvRSt6vectorIT_SaIS2_EESt10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl12errorMessageEPKc used by debian/libasl0/usr/lib/x86_64-linux-gnu/libasldata.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 50 other similar warnings have been skipped (use -v to see them all)
dpkg-shlibdeps: warning: symbol _ZN3asl12errorMessageEPKc used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIiEEvSt10shared_ptrINS_11ElementBaseEEPT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol clReleaseKernel used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase7getSizeEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol clReleaseCommandQueue used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIdEEvSt10shared_ptrINS_11ElementBaseEEPT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl10isMemBlockESt10shared_ptrINS_11ElementBaseEE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl4copyIfEEvSt10shared_ptrINS_11ElementBaseEEPT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZTVN3acl6KernelE used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZNK3acl11ElementBase9getTypeIDEv used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmatio.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 1 similar warning has been skipped (use -v to see it)
dpkg-shlibdeps: warning: symbol _ZN3asl12errorMessageEPKc used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl6selectERKNS_16VectorOfElementsES2_S2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3asl12errorMessageERKSs used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl12crossProductERKNS_16VectorOfElementsES2_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl14getElementTypeERKNS_16VectorOfElementsEj used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl5subVEERKNS_16VectorOfElementsEj used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl20generateVEVariableSPIdEENS_16VectorOfElementsESt10shared_ptrIT_E used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl19generateVEConstantNIdEENS_16VectorOfElementsEjT_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl19KernelConfigurationC1ERKS0_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: symbol _ZN3acl18generateVEConstantIiEENS_16VectorOfElementsET_ used by debian/libasl0/usr/lib/x86_64-linux-gnu/libaslmath.so.0.1.5 found in none of the libraries
dpkg-shlibdeps: warning: 68 other similar warnings have been skipped (use -v to see them all)

some tests failed linking

I just wanted to mention that two tests failed linking:

  1. test/testACL/testMatrixOfElements
    This can be fixed by placing asl after aslmath in target_link_libraries
  2. test/testAGL/testVTK_IO
    can be fixed by placing asl after aslvtk

Thanks for sharing this library !

poro-elascitity example

Hello
I have built ASL and tried to use for poroelascticity.
There is a example but no input file and it seems that the code is requesting it
any help could be really appreciated
best
jac

Running locomotive example throws `std::logic_error`

After building ASL successfully from source, running the example described in the README fails:

~ $ cd src/build-asl/examples/flow/locomotive/
~/src/build-asl/examples/flow/locomotive $ ./asl-locomotive --input locomotive.stl
ASL WARNING: ApplicationParametersManager::load() - no parameters file provided. Using default and/or command line values.
Data initialization... Finished
Numerics initialization... terminate called after throwing an instance of 'std::logic_error'
  what():  ASL ERROR: CommandQueue::enqueueNDRangeKernel() - kernel (-4).
aborted (core dumped)

I first suspected that OpenCL was at fault, but it appears to be working correctly. Some further info:

~ $ asl-hardware
Platform: NVIDIA Corporation
Number of devices: 1
	GeForce GT 730
		type: GPU
		number of compute units: 2
		alignment: 128
		local memory type: CL_LOCAL
		local memory size: 49152
		max item size: 1024
		vector width float: 1
		vector width double: 1
		extension CL_KHR_FP64: 1
		extension CL_KHR_INT64_EXTENDED_ATOMICS: 0
		supported OpenCL version: OpenCL 1.2 CUDA
		OpenCL driver version: 390.116

~ $ lspci -v | grep VGA
01:00.0 VGA compatible controller: NVIDIA Corporation GK208B [GeForce GT 730] (rev a1) (prog-if 00 [VGA controller])

~ $ lsb_release -a
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 18.04.3 LTS
Release:	18.04
Codename:	bionic

Is there any advice on this or experience with similar issues?

Program crash with Visual Studio

Hello
I have compiled ASL with VTL 8.1.1 and Boost 1_68_00
I am trying to run the example bus_wind
I get a program crash at ApplicationParametersManager

in function

template <cl_int name> typename
detail::param_traits<detail::cl_command_queue_info, name>::param_type
getInfo(cl_int* err = NULL) const
{
typename detail::param_traits<
detail::cl_command_queue_info, name>::param_type param;
cl_int result = getInfo(name, &param);
if (err != NULL) {
*err = result;
}
return param;
}
err equals -34
any hint ?
thanks
jac

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.