Code Monkey home page Code Monkey logo

Comments (3)

Jokeren avatar Jokeren commented on August 24, 2024

N_RADIUS does not depend on N_THREADS_PER_BLOCK_DIM. N_RADIUS = 4 refers to the case which the order of a stencil is high. Figure 1 in this paper (https://arxiv.org/ftp/arxiv/papers/2002/2002.05983.pdf) shows the comparison between a low order stencil and a high order stencil. Usually we use the same number for all three dimensions. @rsrice can provide more information.

from gpa-minimod-artifacts.

zjin-lcf avatar zjin-lcf commented on August 24, 2024

When N_THREADS_PER_BLOCK_DIM is equal to 4, the min and max values are 0. If you could reproduce that, please suggest the code changes. I assume min and max values are not supposed to be 0.

./main --grid 100
ndamp = 27 27 27
grid = 100 100 100
time step 100 / 1000
time step 200 / 1000
time step 300 / 1000
time step 400 / 1000
time step 500 / 1000
time step 600 / 1000
time step 700 / 1000
time step 800 / 1000
time step 900 / 1000
time step 1000 / 1000
FINAL min_u,  max_u = 0.000000, 0.000000

from gpa-minimod-artifacts.

rsrice avatar rsrice commented on August 24, 2024

N_THREADS_PER_BLOCK_DIM and N_RADIUS in this implementation are not parameters. The optimizations of shared memory fetching, such as L40-45, assume the grid size of 8x8x8 as we have discussed in this paper (https://arxiv.org/abs/2009.04619). They are not parameters but are extracted out as macros for better readability instead of magic numbers being all over the place.

With that said, we are working towards a semi-automated code generation for minimod that allows the arbitrary grid sizes. It also implies one can specify different sizes across three dimensions. If you are interested in minimod and plan to experimenting different grid sizes, such as 8x8x4 or 7x5x6, please stay tuned.

from gpa-minimod-artifacts.

Related Issues (1)

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.