Advanced Simulation Library

Last updated

Advanced Simulation Library
Developer(s) Avtech Scientific
Initial release14 May 2015;8 years ago (2015-05-14)
Stable release
0.1.7 / 9 November 2016;7 years ago (2016-11-09)
Repository github.com/AvtechScientific/ASL
Written in C++
Operating system Unix/Linux, Windows, Mac
Type Multiphysics, Computer-aided engineering, Computational fluid dynamics, Simulation software
License GNU Affero General Public License, optional commercial license (based on MIT License)
Website asl.org.il
Multicomponent flow video
Computer-assisted cryosurgery Advanced Simulation Library - Computer-assisted cryosurgery.png
Computer-assisted cryosurgery
Simulation of a microfluidic device for separating mixtures of proteins Advanced Simulation Library - microfluidic device for separating mixtures of proteins.png
Simulation of a microfluidic device for separating mixtures of proteins
Coating procedure employing physical vapor deposition (PVD) method Advanced Simulation Library - Coating procedure employing Physical Vapor Deposition (PVD) method.png
Coating procedure employing physical vapor deposition (PVD) method
Image-guided neurosurgery, brain deformation simulation Advanced Simulation Library - Image-guided neurosurgery, brain deformation simulation.png
Image-guided neurosurgery, brain deformation simulation
Aerodynamics of a locomotive in a tunnel Advanced Simulation Library - Aerodynamics of a locomotive in a tunnel.png
Aerodynamics of a locomotive in a tunnel

Advanced Simulation Library (ASL) is a free and open-source hardware-accelerated multiphysics simulation platform. It enables users to write customized numerical solvers in C++ and deploy them on a variety of massively parallel architectures, ranging from inexpensive FPGAs, DSPs and GPUs [1] up to heterogeneous clusters and supercomputers. Its internal computational engine is written in OpenCL and utilizes matrix-free solution techniques. ASL implements variety of modern numerical methods, i.a. level-set method, lattice Boltzmann, immersed boundary. The mesh-free, immersed boundary approach allows users to move from CAD directly to simulation, reducing pre-processing efforts and number of potential errors. ASL can be used to model various coupled physical and chemical phenomena, especially in the field of computational fluid dynamics. It is distributed under the free GNU Affero General Public License with an optional commercial license (which is based on the permissive MIT License).

Contents

History

Advanced Simulation Library is being developed by Avtech Scientific, an Israeli company. Its source code was released to the community on 14 May 2015, whose members packaged it for scientific sections of all major Linux distributions shortly thereafter. [2] [3] [4] [5] [6] [7] Subsequently, Khronos Group acknowledged the significance of ASL and listed it on its website among OpenCL-based resources. [8]

Application areas

Advantages and disadvantages

Advantages

Disadvantages

Features

ASL provides a range of features to solve number of problems - from complex fluid flows involving chemical reactions, turbulence and heat transfer, to solid mechanics and elasticity. [11]

Uses

Related Research Articles

<span class="mw-page-title-main">Coprocessor</span> Type of computer processor

A coprocessor is a computer processor used to supplement the functions of the primary processor. Operations performed by the coprocessor may be floating-point arithmetic, graphics, signal processing, string processing, cryptography or I/O interfacing with peripheral devices. By offloading processor-intensive tasks from the main processor, coprocessors can accelerate system performance. Coprocessors allow a line of computers to be customized, so that customers who do not need the extra performance do not need to pay for it.

OpenMAX, often shortened as "OMX", is a non-proprietary and royalty-free cross-platform set of C-language programming interfaces. It provides abstractions for routines that are especially useful for processing of audio, video, and still images. It is intended for low power and embedded system devices that need to efficiently process large amounts of multimedia data in predictable ways, such as video codecs, graphics libraries, and other functions for video, image, audio, voice and speech.

The Khronos Group, Inc. is an open, non-profit, member-driven consortium of 170 organizations developing, publishing and maintaining royalty-free interoperability standards for 3D graphics, virtual reality, augmented reality, parallel computation, vision acceleration and machine learning. The open standards and associated conformance tests enable software applications and middleware to effectively harness authoring and accelerated playback of dynamic media across a wide variety of platforms and devices. The group is based in Beaverton, Oregon.

General-purpose computing on graphics processing units is the use of a graphics processing unit (GPU), which typically handles computation only for computer graphics, to perform computation in applications traditionally handled by the central processing unit (CPU). The use of multiple video cards in one computer, or large numbers of graphics chips, further parallelizes the already parallel nature of graphics processing.

Dassault Systèmes Simulia Corp. is a computer-aided engineering (CAE) vendor. Formerly known as Abaqus Inc. and previously Hibbitt, Karlsson & Sorensen, Inc., (HKS), the company was founded in 1978 by David Hibbitt, Bengt Karlsson and Paul Sorensen, and has its headquarters in Providence, Rhode Island.

Computational magnetohydrodynamics (CMHD) is a rapidly developing branch of magnetohydrodynamics that uses numerical methods and algorithms to solve and analyze problems that involve electrically conducting fluids. Most of the methods used in CMHD are borrowed from the well established techniques employed in Computational fluid dynamics. The complexity mainly arises due to the presence of a magnetic field and its coupling with the fluid. One of the important issues is to numerically maintain the (conservation of magnetic flux) condition, from Maxwell's equations, to avoid the presence of unrealistic effects, namely magnetic monopoles, in the solutions.

In computing, Close To Metal is the name of a beta version of a low-level programming interface developed by ATI, now the AMD Graphics Product Group, aimed at enabling GPGPU computing. CTM was short-lived, and the first production version of AMD's GPGPU technology is now called AMD Stream SDK, or rather the current AMD APP SDK for Windows and Linux 32-bit and 64-bit. APP stands for "Accelerated Parallel Processing" and also targets Heterogeneous System Architecture.

<span class="mw-page-title-main">VisIt</span>

VisIt is an open-source interactive parallel visualization and graphical analysis tool for viewing scientific data. It can be used to visualize scalar and vector fields defined on 2D and 3D structured and unstructured meshes. VisIt was designed to handle big data set sizes in the terascale range and small data sets in the kilobyte range.

<span class="mw-page-title-main">OpenCL</span> Open standard for programming heterogenous computing systems, such as CPUs or GPUs

OpenCL is a framework for writing programs that execute across heterogeneous platforms consisting of central processing units (CPUs), graphics processing units (GPUs), digital signal processors (DSPs), field-programmable gate arrays (FPGAs) and other processors or hardware accelerators. OpenCL specifies programming languages for programming these devices and application programming interfaces (APIs) to control the platform and execute programs on the compute devices. OpenCL provides a standard interface for parallel computing using task- and data-based parallelism.

In computational fluid dynamics, the immersed boundary method originally referred to an approach developed by Charles Peskin in 1972 to simulate fluid-structure (fiber) interactions. Treating the coupling of the structure deformations and the fluid flow poses a number of challenging problems for numerical simulations. In the immersed boundary method the fluid is represented in an Eulerian coordinate system and the structure is represented in Lagrangian coordinates. For Newtonian fluids governed by the Navier–Stokes equations, the fluid equations are

<span class="mw-page-title-main">Intel Graphics Technology</span> Series of integrated graphics processors by Intel

Intel Graphics Technology (GT) is the collective name for a series of integrated graphics processors (IGPs) produced by Intel that are manufactured on the same package or die as the central processing unit (CPU). It was first introduced in 2010 as Intel HD Graphics and renamed in 2017 as Intel UHD Graphics.

<span class="mw-page-title-main">PandaBoard</span> Single board computer

The PandaBoard was a low-power single-board computer development platform based on the Texas Instruments OMAP4430 system on a chip (SoC). The board has been available to the public at the subsidized price of US$174 since 27 October 2010. It is a community supported development platform.

<span class="mw-page-title-main">Computational astrophysics</span> Methods and computing tools developed and used in astrophysics research

Computational astrophysics refers to the methods and computing tools developed and used in astrophysics research. Like computational chemistry or computational physics, it is both a specific branch of theoretical astrophysics and an interdisciplinary field relying on computer science, mathematics, and wider physics. Computational astrophysics is most often studied through an applied mathematics or astrophysics programme at PhD level.

<span class="mw-page-title-main">GetFEM++</span>

GetFEM++ is a generic finite element C++ library with interfaces for Python, Matlab and Scilab. It aims at providing finite element methods and elementary matrix computations for solving linear and non-linear problems numerically. Its flexibility in choosing among different finite element approximations and numerical integration methods is one of its distinguishing characteristics.

Heterogeneous computing refers to systems that use more than one kind of processor or core. These systems gain performance or energy efficiency not just by adding the same type of processors, but by adding dissimilar coprocessors, usually incorporating specialized processing capabilities to handle particular tasks.

OpenVX is an open, royalty-free standard for cross-platform acceleration of computer vision applications. It is designed by the Khronos Group to facilitate portable, optimized and power-efficient processing of methods for vision algorithms. This is aimed for embedded and real-time programs within computer vision and related scenarios. It uses a connected graph representation of operations.

Multidimensional Digital Signal Processing (MDSP) refers to the extension of Digital signal processing (DSP) techniques to signals that vary in more than one dimension. While conventional DSP typically deals with one-dimensional data, such as time-varying audio signals, MDSP involves processing signals in two or more dimensions. Many of the principles from one-dimensional DSP, such as Fourier transforms and filter design, have analogous counterparts in multidimensional signal processing.

bitpit is an open source modular library for scientific computing. The goal of bitpit is to ease the burden of writing scientific programs providing the common building blocks needed by every scientific application.

<span class="mw-page-title-main">ROCm</span> Parallel computing platform: GPGPU libraries and application programming interface

ROCm is an Advanced Micro Devices (AMD) software stack for graphics processing unit (GPU) programming. ROCm spans several domains: general-purpose computing on graphics processing units (GPGPU), high performance computing (HPC), heterogeneous computing. It offers several programming models: HIP, OpenMP/Message Passing Interface (MPI), OpenCL.

References

  1. "ASL - expanding software ecosystem for the DSP/FPGA/GPU market" (PDF). Archived from the original (PDF) on 25 August 2017. Retrieved 27 September 2015.
  2. "ASL - ASL enters Linux distributions at a record-breaking pace". asl.org.il.
  3. "Advanced Simulation Library". openSUSE Build Service.
  4. "Debian -- Details of package libasl0 in sid". packages.debian.org.
  5. "asl « sci-libs - proj/sci.git - Gentoo Science Overlay". cgit.gentoo.org.
  6. "ASL for Fedora". Archived from the original on 8 December 2015. Retrieved 30 November 2015.
  7. "Arch Linux - Package Search". archlinux.org.
  8. "OpenCL - The Open Standard for Parallel Programming of Heterogeneous Systems". The Khronos Group. 21 July 2013. Archived from the original on 8 October 2021. Retrieved 8 October 2021.
  9. "ASL: locomotive.cc". asl.org.il.
  10. "Deployment · AvtechScientific/ASL Wiki". GitHub. 25 July 2022.
  11. Scientific, Avtech (3 September 2015). "Advanced Simulation Library: Expanding software ecosystem for the DSP/FPGA/GPU market" via hgpu.org.{{cite journal}}: Cite journal requires |journal= (help)
  12. "Results - Intraoperative Brain Shift | The Active Project". www.active-fp7.eu.
  13. "ASL assists neurosurgeons and robots, computes brain deformation in real time - Technology OrgTechnology Org". 14 September 2015.
  14. "ASL Software Assists Neurosurgeons and Robots". interestingengineering.com. 28 November 2016.