Git Product home page Git Product logo

stencilcomputing's Introduction

Grid_generator.c [DONE]

(1) Generate stencil grid address traces

  • Dimension: 1D, 2D, 3D
  • Size_of_Dimension: [int]
  • Data_type: single floating[float], double floating[double]

(2) Build memory traces file of stencil computing

Read stencil grid address traces and build memory traces based on the stencil type
  • Iteration_type: Jacobi Iteration, involve 2 same size grid
  • Order: [int] (Computing elements in each dimension: 2 * Order + 1)
  • Boundary Condition: ghost cells storing boundary conditions
    • i.e. the element before the first one is the last element in this dimension. the element after the last on is the first element in this dimension.
  • Access_types:
    • (TYPE_0): Order varies, the elements involved in one point computation is calculated based on the order size.
    • (TYPE_1): Order = 1, 2D 9-points: B[i][j] = A[i-1][j] + A[i][j] + A[i+1][j] + A[i][j-1] + A[i][j+1] + A[i-1][j-1] + A[i+1][j-1] + A[i-1][j+1] + A[i+1][j+1]
    • (TYPE_2): Order = 1, 3D 27-points: B[i][j][k] = A[i][j][k] + (A[i-1][j][k] + A[i+1][j][k] + A[i][j-1][k] + A[i][j+1][k] + A[i][j][k-1] + A[i][j][k+1]) + (A[i-1][j][k-1] + A[i+1][j][k-1] + A[i][j-1][k-1] + A[i][j+1][k-1] + A[i-1][j-1][k] + A[i-1][j+1][k] + A[i+1][j-1][k] + A[i+1][j+1][k] + A[i-1][j][k+1] + A[i+1][j][k+1] + A[i][j-1][k+1] + A[i][j+1][k+1]) + (A[i-1][j-1][k-1] + A[i-1][j+1][k-1] + A[i+1][j-1][k-1] + A[i+1][j+1][k-1] + A[i-1][j-1][k+1] + A[i-1][j+1][k+1] + A[i+1][j-1][k+1] + A[i+1][j+1][k+1])

(3) Build PIMS memory traces file

Read stencil grid address traces, mark these traces as HOST_RD and HOST_WR; Build memory traces based on the stencil type, mark these traces as PIMS_RD

Mmu_simulator.c [DONE]

Read memory traces and translate into physical memory traces

Host_cacheSim.c [DONE]

Read memory trace file; Calculate cache miss and cache hit; Generate memory request traces file

PIMS_cacheSim.c [TODO]

Read PIMS memory traces file; Apply cache simulation on the PIMS_RD memory requests; Generate memory request traces file

HMC-SIM [TODO]

Implement CMC, Modify HMC-SIM, Simulate with trace files

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.