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

[ASPLOS][WIP] Passthrough kernel in basic examples #1216

Merged
merged 9 commits into from
Apr 11, 2024

Conversation

denolf
Copy link
Collaborator

@denolf denolf commented Apr 10, 2024

No description provided.

@denolf denolf changed the base branch from main to asplos April 10, 2024 20:55
aie_kernels/aie_generic/passThrough.cc Outdated Show resolved Hide resolved
aie_kernels/aie_generic/passThrough.cc Outdated Show resolved Hide resolved
programming_examples/basic/passthrough_kernel/test.cpp Outdated Show resolved Hide resolved
programming_examples/basic/passthrough_kernel/test.cpp Outdated Show resolved Hide resolved
programming_examples/basic/passthrough_kernel/test.cpp Outdated Show resolved Hide resolved
programming_examples/basic/passthrough_kernel/test.cpp Outdated Show resolved Hide resolved
programming_examples/basic/passthrough_kernel/test.cpp Outdated Show resolved Hide resolved
Copy link
Contributor

github-actions bot commented Apr 10, 2024

Coverage Report

Created: 2024-04-11 21:18

Click here for information about interpreting this report.

FilenameFunction CoverageLine CoverageRegion CoverageBranch Coverage
Conversion/AIEVecToLLVM/AIEVecToLLVM.cpp 82.05% 87.48% 74.30% 60.16%
Dialect/AIE/Transforms/AIEObjectFifoRegisterProcess.cpp 100.00% 93.63% 96.77% 90.74%
Dialect/AIE/Transforms/AIEObjectFifoStatefulTransform.cpp 100.00% 95.66% 94.44% 89.50%
Dialect/AIEVec/TransformOps/AIEVecTransformOps.cpp 100.00% 98.44% 95.77% 76.92%
Dialect/AIEX/Transforms/AIEDmaToIpu.cpp 100.00% 93.21% 88.75% 76.79%
Totals 93.20% 93.38% 89.67% 82.55%
Generated by llvm-cov -- llvm version 14.0.0

denolf and others added 3 commits April 10, 2024 17:31
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
@denolf denolf marked this pull request as ready for review April 10, 2024 23:55
@denolf denolf requested a review from AndraBisca April 11, 2024 14:18
Copy link
Collaborator

@AndraBisca AndraBisca left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This looks good! I can point to the passthrough_kernel from the programming guide since it contains a very simple design with L3 to L1 and back data movement.

#include <iostream>
#include <sstream>

#include "xrt/xrt_bo.h"
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[clang-format] reported by reviewdog 🐶

Suggested change
#include "xrt/xrt_bo.h"


#include "xrt/xrt_bo.h"
#include "test_utils.h"

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[clang-format] reported by reviewdog 🐶

Suggested change
#include "xrt/xrt_bo.h"

Comment on lines +77 to +78
test_utils::init_xrt_load_kernel(device, kernel, verbosity, vm["xclbin"].as<std::string>(),
vm["kernel"].as<std::string>());
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[clang-format] reported by reviewdog 🐶

Suggested change
test_utils::init_xrt_load_kernel(device, kernel, verbosity, vm["xclbin"].as<std::string>(),
vm["kernel"].as<std::string>());
test_utils::init_xrt_load_kernel(device, kernel, verbosity,
vm["xclbin"].as<std::string>(),
vm["kernel"].as<std::string>());

@@ -19,6 +19,7 @@
#include <sstream>
#include <string>
#include <vector>
#include <iomanip>
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[clang-format] reported by reviewdog 🐶

Suggested change
#include <iomanip>

// out += N;
}
chess_prepare_for_pipelining chess_loop_range(6, ) { *outPtr++ = *inPtr++; }

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[clang-format] reported by reviewdog 🐶

Suggested change

@jackl-xilinx jackl-xilinx merged commit 73440d7 into asplos Apr 11, 2024
51 of 54 checks passed
@jackl-xilinx jackl-xilinx deleted the passthroughKernel branch April 11, 2024 22:38
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Signed-off-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: Javier Setoain <jsetoain@users.noreply.github.com>
Co-authored-by: James Newling <james.newling@gmail.com>
Co-authored-by: Maksim Levental <maksim.levental@gmail.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: erwei-xilinx <erweiw@xilinx.com>
Co-authored-by: AndraBisca <andrab@amd.com>

Started writing the objfifo intro tutorial

Vectorize vec scalar (Xilinx#1135)

Added new programming guide section placedholders (Xilinx#1138)

[EXAMPLE] An element-wise add example (Xilinx#1148)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

Moved objfifo design example 1 to programming_guide sections 3.

Started objectFifo programming guide

Continue section 3 guide.

ObjFifo guide: access patterns

Add example to objFifo guide

Update objfifo guide

Separate section 3 of the guide into 3 subsections

[ASPLOS] Weight expand asplos (Xilinx#1158)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Phil James-Roxby <pjr@amd.com>

Reorganize subsections in section 3 of the guide.

Updated sections 3a and 3b

Pjr vector exp (Xilinx#1166)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[SOFTMAX] Single column rapid test (Xilinx#1168)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Vector softmax (Xilinx#1172)

Co-authored-by: pjr <pjr@xilinx.com>

[MERGE] This has gone horribly wrong, so fixing up in place

Update exp.cc

Merge resolved

Added new programming guide section placedholders (Xilinx#1174)

Swapped section-2 and section-3 (Xilinx#1177)

Update section-1 and section-3 examples (Xilinx#1179)

Update section-3 (Xilinx#1181)

Reorganize tutorials and reference_designs to programming_examples (Xilinx#1182)

Fix for mmult lit (Xilinx#1187)

Revert "Fix for mmult lit" (Xilinx#1188)

[ASPLOS][WIP] python host code example (Xilinx#1185)

Extract arg parse from test.py (Xilinx#1192)

Add finished write-up for sections 2a and 2b

Add objectfifo bindings to quick references

Update section2 subsection list

[ASPLOS][WIP] initial version of asplos24 tutorial description (Xilinx#1184)

Co-authored-by: Jack Lo <jack.lo@amd.com>

Fix for lit tests (Xilinx#1189)

Rename tutorials folder (Xilinx#1190) (Xilinx#1197)

Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

[ASPLOS] Rename directories (Xilinx#1196)

Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>
Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

Add section 2c. Update tiles in sections 2a and 2b.

Add generic aie array description paragraph (Xilinx#1191)

Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

ReLU with tracing (Xilinx#1204)

ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Signed-off-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: Javier Setoain <jsetoain@users.noreply.github.com>
Co-authored-by: James Newling <james.newling@gmail.com>
Co-authored-by: Maksim Levental <maksim.levental@gmail.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: erwei-xilinx <erweiw@xilinx.com>
Co-authored-by: AndraBisca <andrab@amd.com>

Started writing the objfifo intro tutorial

Vectorize vec scalar (Xilinx#1135)

Added new programming guide section placedholders (Xilinx#1138)

[EXAMPLE] An element-wise add example (Xilinx#1148)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

Moved objfifo design example 1 to programming_guide sections 3.

Started objectFifo programming guide

Continue section 3 guide.

ObjFifo guide: access patterns

Add example to objFifo guide

Update objfifo guide

Separate section 3 of the guide into 3 subsections

[ASPLOS] Weight expand asplos (Xilinx#1158)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Phil James-Roxby <pjr@amd.com>

Reorganize subsections in section 3 of the guide.

Updated sections 3a and 3b

Pjr vector exp (Xilinx#1166)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[SOFTMAX] Single column rapid test (Xilinx#1168)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Vector softmax (Xilinx#1172)

Co-authored-by: pjr <pjr@xilinx.com>

[MERGE] This has gone horribly wrong, so fixing up in place

Update exp.cc

Merge resolved

Added new programming guide section placedholders (Xilinx#1174)

Swapped section-2 and section-3 (Xilinx#1177)

Update section-1 and section-3 examples (Xilinx#1179)

Update section-3 (Xilinx#1181)

Reorganize tutorials and reference_designs to programming_examples (Xilinx#1182)

Fix for mmult lit (Xilinx#1187)

Revert "Fix for mmult lit" (Xilinx#1188)

[ASPLOS][WIP] python host code example (Xilinx#1185)

Extract arg parse from test.py (Xilinx#1192)

Add finished write-up for sections 2a and 2b

Add objectfifo bindings to quick references

Update section2 subsection list

[ASPLOS][WIP] initial version of asplos24 tutorial description (Xilinx#1184)

Co-authored-by: Jack Lo <jack.lo@amd.com>

Fix for lit tests (Xilinx#1189)

Rename tutorials folder (Xilinx#1190) (Xilinx#1197)

Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

[ASPLOS] Rename directories (Xilinx#1196)

Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>
Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

Add section 2c. Update tiles in sections 2a and 2b.

Add generic aie array description paragraph (Xilinx#1191)

Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

ReLU with tracing (Xilinx#1204)

ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 12, 2024
Signed-off-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: Javier Setoain <jsetoain@users.noreply.github.com>
Co-authored-by: James Newling <james.newling@gmail.com>
Co-authored-by: Maksim Levental <maksim.levental@gmail.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Abhishek Varma <abhvarma@amd.com>
Co-authored-by: erwei-xilinx <erweiw@xilinx.com>
Co-authored-by: AndraBisca <andrab@amd.com>

Started writing the objfifo intro tutorial

Vectorize vec scalar (Xilinx#1135)

Added new programming guide section placedholders (Xilinx#1138)

[EXAMPLE] An element-wise add example (Xilinx#1148)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

Moved objfifo design example 1 to programming_guide sections 3.

Started objectFifo programming guide

Continue section 3 guide.

ObjFifo guide: access patterns

Add example to objFifo guide

Update objfifo guide

Separate section 3 of the guide into 3 subsections

[ASPLOS] Weight expand asplos (Xilinx#1158)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Phil James-Roxby <pjr@amd.com>

Reorganize subsections in section 3 of the guide.

Updated sections 3a and 3b

Pjr vector exp (Xilinx#1166)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[SOFTMAX] Single column rapid test (Xilinx#1168)

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

Vector softmax (Xilinx#1172)

Co-authored-by: pjr <pjr@xilinx.com>

[MERGE] This has gone horribly wrong, so fixing up in place

Update exp.cc

Merge resolved

Added new programming guide section placedholders (Xilinx#1174)

Swapped section-2 and section-3 (Xilinx#1177)

Update section-1 and section-3 examples (Xilinx#1179)

Update section-3 (Xilinx#1181)

Reorganize tutorials and reference_designs to programming_examples (Xilinx#1182)

Fix for mmult lit (Xilinx#1187)

Revert "Fix for mmult lit" (Xilinx#1188)

[ASPLOS][WIP] python host code example (Xilinx#1185)

Extract arg parse from test.py (Xilinx#1192)

Add finished write-up for sections 2a and 2b

Add objectfifo bindings to quick references

Update section2 subsection list

[ASPLOS][WIP] initial version of asplos24 tutorial description (Xilinx#1184)

Co-authored-by: Jack Lo <jack.lo@amd.com>

Fix for lit tests (Xilinx#1189)

Rename tutorials folder (Xilinx#1190) (Xilinx#1197)

Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

[ASPLOS] Rename directories (Xilinx#1196)

Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>
Co-authored-by: AndraBisca <andrab@amd.com>
Co-authored-by: Jack Lo <36210336+jackl-xilinx@users.noreply.github.com>

Add section 2c. Update tiles in sections 2a and 2b.

Add generic aie array description paragraph (Xilinx#1191)

Co-authored-by: Joseph Melber <jgmelber@gmail.com>
Co-authored-by: Jack Lo <jack.lo@amd.com>

ReLU with tracing (Xilinx#1204)

ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 15, 2024
ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 15, 2024
ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
fifield pushed a commit to fifield/mlir-aie that referenced this pull request Apr 15, 2024
ReLU example with tracing

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Joseph Melber <jgmelber@gmail.com>

Ml eltwise add and mul (Xilinx#1207)

Move around of the eltwise add (put it in ml) and a new eltwise mul kernel

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: Jeff Fifield <jeff.fifield@amd.com>

Moved test_lib to runtime_lib/test_lib for now

Pjr reduce (Xilinx#1222) Reduce programming examples

Co-authored-by: pjr <pjr@xilinx.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

[ASPLOS][WIP] Passthrough kernel in basic examples (Xilinx#1216)

Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>

fix paths run.lit passthrough _kernel (Xilinx#1225)

Fixed CMakeLists.txt reference to test_utils.h (Xilinx#1223)

Minor CMakeLists.txt and Makefile fixes for programming_examples (Xilinx#1227)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants