A RetroSearch Logo

Home - News ( United States | United Kingdom | Italy | Germany ) - Football scores

Search Query:

Showing content from https://github.com/XFluids/XFluids below:

XFluids/XFluids: a unified cross-architecture heterogeneous CFD solver

XFluids: A unified cross-architecture heterogeneous reacting flows simulation solver

XFluids is a parallelized SYstem-wide Compute Language (SYCL) C++ solver for large-scale high-resolution simulations of compressible multi-component reacting flows. It is developed by Prof. Shucheng Pan's group at the School of Aeronautics, Northwestern Polytechincal University.

main developers:

other contributors:

If you use XFluids for academic aplications, please cite our paper:

Jinlong Li, Shucheng Pan (2024). XFluids: A unified cross-architecture heterogeneous reacting flows simulation solver and its applications for multi-component shock-bubble interactions. arXiv:2403.05910. (https://arxiv.org/abs/2403.05910)

The following gpus have been tested:

1. Manually installed Dependencies 1.1. PPA cantera packages (3.1.0 now) is supported
sudo apt install software-properties-common -y
sudo apt-add-repository ppa:cantera-team/cantera -y
sudo apt install libcantera-dev libcantera3.1 -y
1.2. One of the following two SYCL implementations:

NOTE: SYCL implementation of AdaptiveCpp is strongly recommended for XFluids, and the support of Intel oneAPI will be deprecated.

2. Select target device in SYCL project 2.1.1 AdaptiveCpp device discovery: exec "acpp-info" in cmd for device counting
$ acpp-info
=================Backend information===================
Loaded backend 0(platform_id): OpenMP
  Found device: hipSYCL OpenMP host device
Loaded backend 1(platform_id): CUDA
  Found device: NVIDIA GeForce RTX 3070
  Found device: NVIDIA GeForce RTX 3070
=================Device information===================
***************** Devices for backend OpenMP *****************
Device 0(device_id)
***************** Devices for backend CUDA *****************
Device 0(device_id)
***************** Devices for backend CUDA *****************
Device 1(device_id)
2.1.2. Intel oneAPI device discovery: exec "sycl-ls" in cmd for device counting
$ sycl-ls
[opencl:acc(platform_id:0):0(device_id)] Intel(R) FPGA Emulation Platform for OpenCL(TM), Intel(R) FPGA Emulation Device 1.2
[opencl:cpu(platform_id:1):1(device_id)] Intel(R) OpenCL, AMD Ryzen 7 5800X 8-Core Processor 3.0
[ext_oneapi_cuda:gpu(platform_id:2):0(device_id)] NVIDIA CUDA BACKEND, NVIDIA T600 0.0 [CUDA 11.5]
[ext_oneapi_cuda:gpu(platform_id:2):1(device_id)] NVIDIA CUDA BACKEND, NVIDIA T600 0.0 [CUDA 11.5]
2.2. Queue construction: set integer platform_id and device_id("DeviceSelect" in json file or option: -dev)

NOTE: platform_id and device_id are revealed in [2.1-Device-discovery]("2.1. Device discovery")

auto device = sycl::platform::get_platforms()[platform_id].get_devices()[device_id];
sycl::queue q(device);
3. Compile and usage of this project 3.1. Read root <XFluids/CMakeLists.txt>

NOTE: MPI functionality is not supported by Intel oneAPI SYCL implementation

4.1. Set MPI_PATH browsed by cmake before build 4.2. The value of MPI_HOME, MPI_INC, path of MPI_CXX(libmpi.so/linmpicxx.so) output on screen while it is found
  -- MPI settings:
  --   MPI_HOME:/home/ompi
  --   MPI_INC: /home/ompi/include added
  --   MPI_CXX lib located: /home/ompi/lib/libmpi.so found
5. .json configure file arguments 6. Executable file options name of options function type -domain domain size : length, width, height float -run domain resolution and running steps: X_inner,Y_inner,Z_inner,nStepmax(if given) int -blk initial local work-group size, dim_blk_x, dim_blk_y, dim_blk_z,DtBlockSize(if given) int -dev device counting and selecting: device munber,platform,device int -mpi mpi cartesian size: mx,my,mz int -mpi-s "weak" or "strong" std::string -mpidbg append the option with or without value to open mpi multi-rank debug just append

NOTE: Output data format is controlled by the value of "OutDAT", "OutVTI" in .json file

@misc{li2024xfluids,
      title={XFluids: A unified cross-architecture heterogeneous reacting flows simulation solver and its applications for multi-component shock-bubble interactions}, 
      author={Jinlong Li and Shucheng Pan},
      year={2024},
      eprint={2403.05910},
      archivePrefix={arXiv}
}

XFluids has received financial support from the following fundings:


RetroSearch is an open source project built by @garambo | Open a GitHub Issue

Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo

HTML: 3.2 | Encoding: UTF-8 | Version: 0.7.4