Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Rework GPU runtime system and copies #1991

Merged
merged 121 commits into from
Aug 8, 2023
Merged

Rework GPU runtime system and copies #1991

merged 121 commits into from
Aug 8, 2023

Commits on Jul 21, 2023

  1. Remove permutations from LMADs.

    athas committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    a47a1ad View commit details
    Browse the repository at this point in the history
  2. Fix this.

    athas committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    59ca859 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    aaeb3da View commit details
    Browse the repository at this point in the history
  4. Fix unittests.

    athas committed Jul 21, 2023
    Configuration menu
    Copy the full SHA
    9418f8e View commit details
    Browse the repository at this point in the history

Commits on Jul 22, 2023

  1. This seems never sound.

    athas committed Jul 22, 2023
    Configuration menu
    Copy the full SHA
    876a05e View commit details
    Browse the repository at this point in the history

Commits on Jul 24, 2023

  1. Configuration menu
    Copy the full SHA
    bb43fd6 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d6254cb View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    100379d View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    2723a96 View commit details
    Browse the repository at this point in the history
  5. No need for these permutations.

    athas committed Jul 24, 2023
    Configuration menu
    Copy the full SHA
    d59755b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    ac865c5 View commit details
    Browse the repository at this point in the history

Commits on Jul 25, 2023

  1. Configuration menu
    Copy the full SHA
    b3a49ef View commit details
    Browse the repository at this point in the history
  2. IxFun/LMAD.rank is useful.

    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    0e67b72 View commit details
    Browse the repository at this point in the history
  3. New IxFun concept: embedding.

    Replaces rebasing, I hope.
    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    67bfc54 View commit details
    Browse the repository at this point in the history
  4. Half-baked testing.

    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    b519de6 View commit details
    Browse the repository at this point in the history
  5. Remove rebasing.

    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    63c1dd3 View commit details
    Browse the repository at this point in the history
  6. More readable this way.

    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    ee0c3c7 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    1fb3ba8 View commit details
    Browse the repository at this point in the history
  8. Configuration menu
    Copy the full SHA
    e24d0e6 View commit details
    Browse the repository at this point in the history
  9. Better detection of transpositions.

    We are actually still too conservative.  A fully dynamic approach is
    needed.
    athas committed Jul 25, 2023
    Configuration menu
    Copy the full SHA
    7ccfb67 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    ab177f2 View commit details
    Browse the repository at this point in the history

Commits on Jul 26, 2023

  1. Configuration menu
    Copy the full SHA
    5e174c3 View commit details
    Browse the repository at this point in the history

Commits on Jul 27, 2023

  1. Begin rework of copying in codegen.

    Adds LMADCopy to Imp and implements generic code generation.  Very
    slow, but at least functional for the C backend.
    athas committed Jul 27, 2023
    Configuration menu
    Copy the full SHA
    f71f4cc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4672e99 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    36f2497 View commit details
    Browse the repository at this point in the history
  4. Start work on GPU copies.

    athas committed Jul 27, 2023
    Configuration menu
    Copy the full SHA
    35acf6f View commit details
    Browse the repository at this point in the history

Commits on Jul 28, 2023

  1. Configuration menu
    Copy the full SHA
    6cf7b92 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0db4d43 View commit details
    Browse the repository at this point in the history
  3. Remove unused things.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    2caca00 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    4e652a1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ccfad48 View commit details
    Browse the repository at this point in the history
  6. Enable large kernel.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    ba632e4 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    2e47ab9 View commit details
    Browse the repository at this point in the history
  8. Remove ImpCode.copy.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    774dfc6 View commit details
    Browse the repository at this point in the history
  9. Oops.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    f32f2e4 View commit details
    Browse the repository at this point in the history
  10. Also must be flipped.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    5789f24 View commit details
    Browse the repository at this point in the history
  11. Multiply with element size.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    f34d378 View commit details
    Browse the repository at this point in the history
  12. Oops, also this one.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    b7dc0d1 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    b7beb50 View commit details
    Browse the repository at this point in the history
  14. Check for empty first.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    0569334 View commit details
    Browse the repository at this point in the history
  15. Fix typo.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    315d93d View commit details
    Browse the repository at this point in the history
  16. Consistent naming.

    athas committed Jul 28, 2023
    Configuration menu
    Copy the full SHA
    8c6002d View commit details
    Browse the repository at this point in the history

Commits on Jul 29, 2023

  1. Consistent logging of copies.

    athas committed Jul 29, 2023
    Configuration menu
    Copy the full SHA
    9f40ae2 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1ffec5c View commit details
    Browse the repository at this point in the history
  3. Record in cabal file.

    athas committed Jul 29, 2023
    Configuration menu
    Copy the full SHA
    c55031e View commit details
    Browse the repository at this point in the history
  4. Correct this.

    athas committed Jul 29, 2023
    Configuration menu
    Copy the full SHA
    c6bd83c View commit details
    Browse the repository at this point in the history

Commits on Jul 30, 2023

  1. Consistent transpose logging.

    athas committed Jul 30, 2023
    Configuration menu
    Copy the full SHA
    068ac1b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    595a97b View commit details
    Browse the repository at this point in the history
  3. More appropriate name.

    athas committed Jul 30, 2023
    Configuration menu
    Copy the full SHA
    6cf01c2 View commit details
    Browse the repository at this point in the history
  4. Shorten lines.

    athas committed Jul 30, 2023
    Configuration menu
    Copy the full SHA
    fa416df View commit details
    Browse the repository at this point in the history
  5. Add remaining kernels.

    athas committed Jul 30, 2023
    Configuration menu
    Copy the full SHA
    9580e60 View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    d378c4d View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    097dc31 View commit details
    Browse the repository at this point in the history

Commits on Jul 31, 2023

  1. Also free builtin kernels.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    575447f View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    52ff34b View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    d0236ab View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    844a2ef View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    ef3c877 View commit details
    Browse the repository at this point in the history
  6. Initial work on CUDA support.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    f9572f3 View commit details
    Browse the repository at this point in the history
  7. Fiddle more with CUDA backend.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    d4118c7 View commit details
    Browse the repository at this point in the history
  8. Pass these constants.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    866b6d9 View commit details
    Browse the repository at this point in the history
  9. Also gpu.h.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    c1988c7 View commit details
    Browse the repository at this point in the history
  10. Should be void.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    5438c47 View commit details
    Browse the repository at this point in the history
  11. Actually GPU.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    b97ec6f View commit details
    Browse the repository at this point in the history
  12. Actually this.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    673e7f5 View commit details
    Browse the repository at this point in the history
  13. Configuration menu
    Copy the full SHA
    373ba68 View commit details
    Browse the repository at this point in the history
  14. Shim this for CUDA.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    bd203e5 View commit details
    Browse the repository at this point in the history
  15. Hide this in macro.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    30cc4a3 View commit details
    Browse the repository at this point in the history
  16. Need cast.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    af8a023 View commit details
    Browse the repository at this point in the history
  17. Oops.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    2f1795c View commit details
    Browse the repository at this point in the history
  18. Oops

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    383cefe View commit details
    Browse the repository at this point in the history
  19. Configuration menu
    Copy the full SHA
    76ba93e View commit details
    Browse the repository at this point in the history
  20. We also need this wrapper.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    2c33905 View commit details
    Browse the repository at this point in the history
  21. Only limit inner dimensions.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    dfcb049 View commit details
    Browse the repository at this point in the history
  22. Handle enormous kernels.

    athas committed Jul 31, 2023
    Configuration menu
    Copy the full SHA
    db66b8d View commit details
    Browse the repository at this point in the history

Commits on Aug 1, 2023

  1. Proper alignment.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    069e17b View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    11d2a1c View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    59dcb2c View commit details
    Browse the repository at this point in the history
  4. Fix indentation.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    34b2544 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c52e19b View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    0d690a2 View commit details
    Browse the repository at this point in the history
  7. CUDA does not have this.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    60a5538 View commit details
    Browse the repository at this point in the history
  8. Oops.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    b1382ac View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    3c13758 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    ec5556a View commit details
    Browse the repository at this point in the history
  11. More centralisation.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    1075b59 View commit details
    Browse the repository at this point in the history
  12. Only used in one spot.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    352c128 View commit details
    Browse the repository at this point in the history
  13. Generic and consistent.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    7afe5c5 View commit details
    Browse the repository at this point in the history
  14. Use OpenCL terminology.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    73b70b1 View commit details
    Browse the repository at this point in the history
  15. More OpenCL terms.

    athas committed Aug 1, 2023
    Configuration menu
    Copy the full SHA
    bf9e950 View commit details
    Browse the repository at this point in the history

Commits on Aug 2, 2023

  1. Unify GPU memory allocation.

    athas committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    256cfa6 View commit details
    Browse the repository at this point in the history
  2. Unify GPU allocation.

    athas committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    2b21310 View commit details
    Browse the repository at this point in the history
  3. Unify GPU scalar read/write.

    athas committed Aug 2, 2023
    Configuration menu
    Copy the full SHA
    d21a835 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    9eef2d1 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    6962a9f View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    57ea298 View commit details
    Browse the repository at this point in the history
  7. Configuration menu
    Copy the full SHA
    f448f53 View commit details
    Browse the repository at this point in the history

Commits on Aug 3, 2023

  1. Fix ISPC codegen.

    athas committed Aug 3, 2023
    Configuration menu
    Copy the full SHA
    15c0eec View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    6fa39b5 View commit details
    Browse the repository at this point in the history
  3. Restore basic Python support.

    athas committed Aug 3, 2023
    Configuration menu
    Copy the full SHA
    a381d4a View commit details
    Browse the repository at this point in the history

Commits on Aug 4, 2023

  1. Configuration menu
    Copy the full SHA
    e5ce2c0 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    d31df9d View commit details
    Browse the repository at this point in the history
  3. Fix.

    athas committed Aug 4, 2023
    Configuration menu
    Copy the full SHA
    93a152f View commit details
    Browse the repository at this point in the history
  4. Fix address calculation.

    athas committed Aug 4, 2023
    Configuration menu
    Copy the full SHA
    0539183 View commit details
    Browse the repository at this point in the history
  5. Fix PyOpenCL local memory.

    athas committed Aug 4, 2023
    Configuration menu
    Copy the full SHA
    a721bdf View commit details
    Browse the repository at this point in the history

Commits on Aug 7, 2023

  1. Configuration menu
    Copy the full SHA
    ce96ef5 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    1dbddae View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    ae1aef3 View commit details
    Browse the repository at this point in the history
  4. Unify GPU copying.

    athas committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    231fea3 View commit details
    Browse the repository at this point in the history
  5. Configuration menu
    Copy the full SHA
    c14cbbd View commit details
    Browse the repository at this point in the history
  6. Configuration menu
    Copy the full SHA
    08d5ee7 View commit details
    Browse the repository at this point in the history
  7. This is unused.

    athas committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    ebe4148 View commit details
    Browse the repository at this point in the history
  8. Simplify further.

    athas committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    05841e6 View commit details
    Browse the repository at this point in the history
  9. Configuration menu
    Copy the full SHA
    adc3e86 View commit details
    Browse the repository at this point in the history
  10. Configuration menu
    Copy the full SHA
    644a49e View commit details
    Browse the repository at this point in the history
  11. Clean up these types.

    athas committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    28fc9ca View commit details
    Browse the repository at this point in the history
  12. Configuration menu
    Copy the full SHA
    1f02851 View commit details
    Browse the repository at this point in the history
  13. Properly ignore these.

    athas committed Aug 7, 2023
    Configuration menu
    Copy the full SHA
    4ae1316 View commit details
    Browse the repository at this point in the history
  14. Configuration menu
    Copy the full SHA
    50ccf11 View commit details
    Browse the repository at this point in the history

Commits on Aug 8, 2023

  1. Manifest simplification rule.

    athas committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    ea30bb3 View commit details
    Browse the repository at this point in the history
  2. Fewer allocations needed.

    athas committed Aug 8, 2023
    Configuration menu
    Copy the full SHA
    5fc50c0 View commit details
    Browse the repository at this point in the history