Coder Social home page Coder Social logo

amgcl_benchmarks's Introduction

DOI

Source code accompanying AMGCL benchmarks.

The system matrix and the RHS used for the Navier-Stokes benchmarks may be retrieved here:

Description DOI
Shared memory benchmark DOI
Distributed memory benchmark DOI

amgcl_benchmarks's People

Contributors

ddemidov avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

amgcl_benchmarks's Issues

Any command line arguments needed?

Dear AMGCL developers, I am trying to get to grips with the shared memory version of the benchmarks, with a particular interest in the Navier-Stokes test. As I did not find any other information, I always launch the executables without any further command line option (the matrix and the rhs are in the same directory as the executables).
smem_ns_amgcl returns after 198 iterations with an error < 1e-4.
smem_ns_amgcl_scalar needs 201 iterations and finishes likewise with an error < 1e-4.
However, smem_ns_schur (which I expected to perform better than the two previous ones), stops after 100 iterations and has not converged yet (error = 3e-3).
Am I missing anything? Any command line options?

cuda error

Hi,

Thank you a lot for implementing this wonderful library. I really want to use it. The problem I have now is the benchmark file amgcl.cu in the shared memory for poisson equation. I have the K20m GPU installed and can compile this file. But When I run it, it gives,

terminate called after throwing an instance of 'std::runtime_error'
what(): CUDA error 2 at "./amgcl/amgcl/backend/cuda.hpp:247
Abort (core dumped)

I didn't try anything in the source code but compile it with make

I really need your help to find anything I did wrong! Thank you so much!

Here is my makefile

CUDA_VERSION = 6.5.14
LINKFLAGS = -Xcompiler "-Wl,-rpath,/usr/local/apps/cuda/cuda-$(CUDA_VERSION)/lib64"
LIBS = -L/usr/local/apps/cuda/cuda-$(CUDA_VERSION)/lib64 -lcudart -lcusparse

poisson_cu.o: poisson.cu
$(NVCC) -std=c++11 -O2 $(INCLUDES) $(CUDA_INC) poisson.cu -c -o poisson_cu.o

poisson_cu: poisson_cu.o
$(NVCC) $(LINKFLAGS) $(LIBS) poisson_cu.o -o poisson_cu

Compilation issues

Hi,
I am currently involved in an open-source project for particle simulations (https://www.sciencedirect.com/science/article/pii/S0010465519300852?via%3Dihub), and working on comparing backends for solving sparse linear systems of equations (Poisson problem). I have found your repository particularly handy, thank you. Unfortunately, the examples utilizing amgcl (I have started with shared memory), seem to be not compiling right with the latest version of amgcl. The errors are showing up when instantiating and applying solver, e.g.

type/value mismatch at argument 2 in template parameter list for ‘template<class Precond, class IterativeSolver> class amgcl::mpi::make_solver’

Could you please clarify whether the examples are compiling right at your side? If so, I will be looking for different possible reasons of the errors. If this is not the case, and some interfaces of the framework have changed, could you please update the examples? Though I am working on it myself, it would save me some time.
Thanks in advance!

Parallel Efficiency Benchmarks

Hi Denis,

I've been trying out the benchmarks for the 3D Poisson case (3375000 unknowns, 23490000 nonzeros) using OpenMP, basically the C++ code in shared_mem/poisson/amgcl.cpp using AMGCL 1.2.0

The parallel efficiency for the solve time doesn't seem to be that good, about a factor of 2 speedup maximum (to ~6 seconds fastest), when I go from 1 to 6 OpenMP threads, whereas the results on the AMGCL website look like the speedup should be >4x with 6 MPI processes.

Would you have any suggestions on this, or would you have some more details on the architecture/compiler on which the 3D Poisson benchmarks were done, perhaps some of these differences could explain the discrepancy?

Other setup details:
-i7-8700 CPU, 6 cores, 64GB memory
-Windows, Visual Studio/C compiler 2013/2019 (similar performance), with built in OpenMP
-Boost 1.62/1.72 (similar performance)
-solver as in the code(smoothed aggregation, spaio, bicgstabl(2))

We're using Python bindings in the final application but we wanted to improve the parallel performance on the C++ side first. Appreciate the help. Regards,

Gary

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.