gem5-aladdin icon indicating copy to clipboard operation
gem5-aladdin copied to clipboard

How to fix error; build/X86/gem5.opt configs/example/se.py -c tests/test-progs/hello/bin/x86/linux/hello

Open peterhchen opened this issue 4 years ago • 49 comments

in /workspace/gem5-addlin,

build/X86/gem5.opt configs/example/se.py -c tests/test-progs/hello/bin/x86/linux/hello Error: AttributeError: Values instance has no attribute 'accel_cfg_file' How to fix this error? 071_CompileRun_Gem5_Aladdin_C_code_CommonZone.pptx

peterhchen avatar Nov 08 '21 21:11 peterhchen

Can you try configs/example/aladdin_se.py instead?

xyzsam avatar Nov 08 '21 21:11 xyzsam

i complied already. I fixed this by:

build/X86/gem5.opt configs/aladdin/aladdin_se.py -c tests/test-progs/hello/bin/x86/linux/hellp

Hello World! See below attached document/ 071_CompileRun_Gem5_Aladdin_C_code_CommonZone_V02.pptx d!

peterhchen avatar Nov 08 '21 21:11 peterhchen

For me, it seems two steps for all designs (written in C code):

  1. Use gcc to compile the c code into binary code.
  2. Use gem5.opt with aladdin_se.py to setup the X86 architecture.
  3. there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

peterhchen avatar Nov 08 '21 22:11 peterhchen

Sure. Will try tomorrow

On Mon, Nov 8, 2021 at 1:39 PM Sam Xi @.***> wrote:

Can you try configs/example/aladdin_se.py instead?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-963599301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD47LXGUCKSXQ4VNNV3ULA7SVANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 09 '21 01:11 peterhchen

How to modify and compile c code in the integration_test folder?

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

On Mon, Nov 8, 2021 at 1:39 PM Sam Xi @.***> wrote:

Can you try configs/example/aladdin_se.py instead?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-963599301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD47LXGUCKSXQ4VNNV3ULA7SVANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 09 '21 02:11 peterhchen

gem5-aladdin/configs/example: No aladdin_se.py.

apu_se.py hmc_hello.py read_config.py sc_main.py arm hmc_tgen.cfg ruby_direct_test.py se.py etrace_replay.py hmctest.py ruby_gpu_random_test.py fs.py memcheck.py ruby_mem_test.py garnet_synth_traffic.py memtest.py ruby_random_test.py

On Mon, Nov 8, 2021 at 1:39 PM Sam Xi @.***> wrote:

Can you try configs/example/aladdin_se.py instead?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-963599301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD47LXGUCKSXQ4VNNV3ULA7SVANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 09 '21 18:11 peterhchen

Update gem5-aladdin for hello.c Need to understand more on gem5 due to no document can follow for all the tests/ntegration_test cases code modification.

On Mon, Nov 8, 2021 at 1:39 PM Sam Xi @.***> wrote:

Can you try configs/example/aladdin_se.py instead?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-963599301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD47LXGUCKSXQ4VNNV3ULA7SVANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 09 '21 18:11 peterhchen

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

compiled and run again with ./run.sh?

On Mon, Nov 8, 2021 at 1:39 PM Sam Xi @.***> wrote:

Can you try configs/example/aladdin_se.py instead?

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-963599301, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD47LXGUCKSXQ4VNNV3ULA7SVANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 09 '21 19:11 peterhchen

gem5-aladdin/configs/example: No aladdin_se.py.

Sorry, I meant configs/aladdin/aladdin_se.py, but you figured this out already.

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

Yes.

there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

Yes, it depends on what you want to do. If you just want to adjust the cache sizes on the CPU cluster, there are flags to do this, see here. If you want to modify the cache sizes on the accelerator, this is done via the gem5.cfg file.

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

Without attaching the patch you made to the file and including instructions on how you are attempting to build, there is no way I can help debug your problem.

xyzsam avatar Nov 10 '21 04:11 xyzsam

[image: image.png]

  1. I can only build xyzsamgem5-alddin by Python2.7 which scons build\X86\gem5.opt
  2. No one in my company use "scons build\X86\gem5.opt
  3. My company and myself use Ubuntu 20.04, 18.04, Python3 and Python2. Only Python 2.7 can build.

On Tue, Nov 9, 2021 at 8:22 PM Sam Xi @.***> wrote:

gem5-aladdin/configs/example: No aladdin_se.py.

Sorry, I meant configs/aladdin/aladdin_se.py, but you figured this out already.

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

Yes.

there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

Yes, it depends on what you want to do. If you just want to adjust the cache sizes on the CPU cluster, there are flags to do this, see here https://github.com/harvard-acc/gem5-aladdin/blob/cdc44d1cee5ad03e5a36bbdfc8d124a68ce5f75a/configs/common/Options.py#L134. If you want to modify the cache sizes on the accelerator, this is done via the gem5.cfg file.

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

Without attaching the patch you made to the file and including instructions on how you are attempting to build, there is no way I can help debug your problem.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-964773461, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD7RHUJWCTPAC236ISLULHXO3ANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 10 '21 04:11 peterhchen

[image: image.png]

In the test_load_store directory: I move the binary file into the backup

mv test_load_store test_load_store_backup First time "make" make

I got the error message above: cannot find "aladdin_sys_connection.h" second time "make" make No error message: ls -l I can see test_load_store-instrumented is generated. I cannot see the "test_load_store" binary file generated. Is the test_load_store-instrunmented (debug) is fine to replace the test_load_store (strip out debug information)?

On Tue, Nov 9, 2021 at 8:22 PM Sam Xi @.***> wrote:

gem5-aladdin/configs/example: No aladdin_se.py.

Sorry, I meant configs/aladdin/aladdin_se.py, but you figured this out already.

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

Yes.

there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

Yes, it depends on what you want to do. If you just want to adjust the cache sizes on the CPU cluster, there are flags to do this, see here https://github.com/harvard-acc/gem5-aladdin/blob/cdc44d1cee5ad03e5a36bbdfc8d124a68ce5f75a/configs/common/Options.py#L134. If you want to modify the cache sizes on the accelerator, this is done via the gem5.cfg file.

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

Without attaching the patch you made to the file and including instructions on how you are attempting to build, there is no way I can help debug your problem.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-964773461, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD7RHUJWCTPAC236ISLULHXO3ANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 10 '21 16:11 peterhchen

In the test_dma_load_store directory

./run.sh

problem 1: the outputs/stats.txt is empty. I cannot find the number of instructions executed. mv test_dma_load_store test_dma_load_store_backup make make Error message as below. The instrumented file is not generated.

[image: image.png]

On Tue, Nov 9, 2021 at 8:22 PM Sam Xi @.***> wrote:

gem5-aladdin/configs/example: No aladdin_se.py.

Sorry, I meant configs/aladdin/aladdin_se.py, but you figured this out already.

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

Yes.

there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

Yes, it depends on what you want to do. If you just want to adjust the cache sizes on the CPU cluster, there are flags to do this, see here https://github.com/harvard-acc/gem5-aladdin/blob/cdc44d1cee5ad03e5a36bbdfc8d124a68ce5f75a/configs/common/Options.py#L134. If you want to modify the cache sizes on the accelerator, this is done via the gem5.cfg file.

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

Without attaching the patch you made to the file and including instructions on how you are attempting to build, there is no way I can help debug your problem.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-964773461, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD7RHUJWCTPAC236ISLULHXO3ANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 10 '21 18:11 peterhchen

In test_load_store/Makefile fixed as below. I move the include ../Makefile.gem5 before the test_load_test.c The error goes away.

cp test_load_store.gem5 test_load_store ./runs.sh It runs.

[image: image.png]

On Tue, Nov 9, 2021 at 8:22 PM Sam Xi @.***> wrote:

gem5-aladdin/configs/example: No aladdin_se.py.

Sorry, I meant configs/aladdin/aladdin_se.py, but you figured this out already.

In test_load_store.c, how to print a message in the application?

printf("Hello test_load_store\n");

Yes.

there is addition configuration L1 Cache, L2 Cache, etc. which is independent for step 1 and step 2?

Yes, it depends on what you want to do. If you just want to adjust the cache sizes on the CPU cluster, there are flags to do this, see here https://github.com/harvard-acc/gem5-aladdin/blob/cdc44d1cee5ad03e5a36bbdfc8d124a68ce5f75a/configs/common/Options.py#L134. If you want to modify the cache sizes on the accelerator, this is done via the gem5.cfg file.

I modify the c file and make. It has the error when include the *h Cannot find the include header in the test_load_store

Without attaching the patch you made to the file and including instructions on how you are attempting to build, there is no way I can help debug your problem.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-964773461, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD7RHUJWCTPAC236ISLULHXO3ANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 10 '21 20:11 peterhchen

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

> make clean
> make dma-trace-binary
> ./test_load_store-instrumented
# This will generate a new dynamic_trace.gz
> make gem5-accel
> sh run.sh

xyzsam avatar Nov 12 '21 07:11 xyzsam

Thanks I will try today Currently, I only type “make” is not good enough. Only test_load_store can run and get both gem5 Ana Aladdin summary report. Others, only gem5 reports. 2-3 tests can not compile by “make” I will have a summary report at end of today.

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 12 '21 15:11 peterhchen

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 12 '21 19:11 peterhchen

Attached file which captures all the images step-by-step.

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 12 '21 19:11 peterhchen

Copy the *gem5_accel into test_load_store.

cp test_load_store-gem5-accel test_load_store Then sh run.sh [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 12 '21 21:11 peterhchen

Hi, Sam Xi:

I have passed the test_load_store however, in the test_dma_load_store,

make dma-trace-binary I have undefined reference 'main'. How to fix this problem?

[image: image.png]

Sincerely, Yours, Peter H. Chen

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 15 '21 21:11 peterhchen

Hi Dr. Sam Xi:

Sorry. My mistakes: Integrations Test Passed:

  1. test_load_store
  2. test_dma_load_store
  3. test_dma_store_order

I will test rests.

Thanks for your help.

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 15 '21 22:11 peterhchen

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 16 '21 17:11 peterhchen

In test_multiple_accelerators:

sh run.sh I got the assertion error.

[image: image.png]

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 16 '21 17:11 peterhchen

Hi Dr Sam Xi:

I have finished all the integreation_test

  1. test_acp: PASS
  2. test_aes: FAIL (Cannot generate trace) [image: image.png] [image: image.png]
  3. test_array_func_arg: PASS
  4. test_array_func_indexing: PASS
  5. test_command_queue: FAIL (Assert Error) [image: image.png]
  6. test_da_load_store: PASS
  7. test_dma_store_order: PASS
  8. test_double_buffering: PASS
  9. test_host_load_store: FAIL (Assert Error) [image: image.png]
  10. test_hybrid: PASS
  11. test_hybrid_simd: PASS
  12. test_load_store: PASS
  13. test_loop_sampling: PASS
  14. test_mmap: FAIL (instrumented cannot generate dynamicTrace.gz) [image: image.png]
  15. test_multiple_accelerators: FAIL (Assert Error) [image: image.png]
  16. test_multiple_invocations: PASS
  17. test_streaming_dma: PASS

Sincerely Yours, Peter H. Chen

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 17 '21 00:11 peterhchen

Hi, Dr. Sam:

We need to generate a dataset for test_load_store. Is there an example to do that?

uDockerfile uFROM: gem5-aladdin_autotest (import and included pyTorch ) uWORKDIR /workspace/dataset uCOPY gem5_aladdin_dataset.py . uCOPY gem5_aladdin_parameter.txt . uCMD [“python”, “gem5_aladdin_dataset.py” uIn gem5_aladdin_dataset.py: u1. Parsing gem5_aladdin_parameter.txt u2. Compile C File into Aladdin Trace. u3. Loop using PyTorch RunManager u3.1 Setup parameters u3.2 pyTorch RunManager for parameters looping [Cartesian product = L1 cache (10) x L2 cache (10) x MMU (10) x etc. = 10^Y loop (rows)] u3.3 run.sh u4. Post processing results into load_store_dataset.csv u5. > docker build … u6. Host: docker run u7. Copy from Container to Host: docker cp outputs/load_store_dataset.csv (comma separate value) .

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 20 '21 06:11 peterhchen

Hi Dr. Xi:

Where can I find the parameters setting document for gem5-aladdin? Below is the only document that I can find from web site:

https://harvard-acc.github.io/smaug_docs/run_model_in_simulation.html

We need the definitions for:

  1. L1, 2, (or 3), Cache:
  2. L1, 2, (or 3), Association:
  3. L1, 2, (or 3): Cache Line Size:
  4. number of CPUs:
  5. memory size:
  6. multi-threads
  7. etc. Where can I find this information?

[image: image.png]

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Nov 22 '21 18:11 peterhchen

Hi Dr Xi:

I made some tests for gem5-aladdin and I found the area never changed as below. The parameters that I used are l11_size, l1i_assoc, l1d_size, l1d_assoc, l2_size, l2_assoc, l3_size, l3_assoc. The ipc (instruction per cycle) and power are fine. Only the area never change.

Do you know why?

  1. Below is the result: [image: image.png]
  2. Below is the sample of run.sh [image: image.png]
  3. The document is 003_DatasetGeneration_v03.pptx as the link below: https://github.com/peterhchen/999_gem5_aladdin/tree/main/12_DockerizePythonAPI

Peter H. Chen

On Mon, Nov 22, 2021 at 10:59 AM Peter Chen @.***> wrote:

Hi Dr. Xi:

Where can I find the parameters setting document for gem5-aladdin? Below is the only document that I can find from web site:

https://harvard-acc.github.io/smaug_docs/run_model_in_simulation.html

We need the definitions for:

  1. L1, 2, (or 3), Cache:
  2. L1, 2, (or 3), Association:
  3. L1, 2, (or 3): Cache Line Size:
  4. number of CPUs:
  5. memory size:
  6. multi-threads
  7. etc. Where can I find this information?

[image: image.png]

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Dec 02 '21 22:12 peterhchen

Hi Dr Xi:

I used size bytes in common/test_cacti_cache.cfg to generate different area sizes. The document (003_DatasetGeneration_v05.pptx) https://github.com/peterhchen/999_gem5_aladdin/tree/main/12_DockerizePythonAPI [image: image.png]

On Thu, Dec 2, 2021 at 2:44 PM Peter Chen @.***> wrote:

Hi Dr Xi:

I made some tests for gem5-aladdin and I found the area never changed as below. The parameters that I used are l11_size, l1i_assoc, l1d_size, l1d_assoc, l2_size, l2_assoc, l3_size, l3_assoc. The ipc (instruction per cycle) and power are fine. Only the area never change.

Do you know why?

  1. Below is the result: [image: image.png]
  2. Below is the sample of run.sh [image: image.png]
  3. The document is 003_DatasetGeneration_v03.pptx as the link below:

https://github.com/peterhchen/999_gem5_aladdin/tree/main/12_DockerizePythonAPI

Peter H. Chen

On Mon, Nov 22, 2021 at 10:59 AM Peter Chen @.***> wrote:

Hi Dr. Xi:

Where can I find the parameters setting document for gem5-aladdin? Below is the only document that I can find from web site:

https://harvard-acc.github.io/smaug_docs/run_model_in_simulation.html

We need the definitions for:

  1. L1, 2, (or 3), Cache:
  2. L1, 2, (or 3), Association:
  3. L1, 2, (or 3): Cache Line Size:
  4. number of CPUs:
  5. memory size:
  6. multi-threads
  7. etc. Where can I find this information?

[image: image.png]

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Dec 03 '21 23:12 peterhchen

Dear Dr. Xi:

In gem5-Aladdin There is a “common” directory set the cache bytes. This cache bytes affect the size of area.

There is “with_cpu” directory set up L1, L2, l3, these size are not affect area

What are the differences between the cache in common directory and L1, L2, L3 in “with cpu” directory?

Peter H Chen

On Thu, Dec 2, 2021 at 2:44 PM Peter Chen @.***> wrote:

Hi Dr Xi:

I made some tests for gem5-aladdin and I found the area never changed as below. The parameters that I used are l11_size, l1i_assoc, l1d_size, l1d_assoc, l2_size, l2_assoc, l3_size, l3_assoc. The ipc (instruction per cycle) and power are fine. Only the area never change.

Do you know why?

  1. Below is the result: [image: image.png]
  2. Below is the sample of run.sh [image: image.png]
  3. The document is 003_DatasetGeneration_v03.pptx as the link below:

https://github.com/peterhchen/999_gem5_aladdin/tree/main/12_DockerizePythonAPI

Peter H. Chen

On Mon, Nov 22, 2021 at 10:59 AM Peter Chen @.***> wrote:

Hi Dr. Xi:

Where can I find the parameters setting document for gem5-aladdin? Below is the only document that I can find from web site:

https://harvard-acc.github.io/smaug_docs/run_model_in_simulation.html

We need the definitions for:

  1. L1, 2, (or 3), Cache:
  2. L1, 2, (or 3), Association:
  3. L1, 2, (or 3): Cache Line Size:
  4. number of CPUs:
  5. memory size:
  6. multi-threads
  7. etc. Where can I find this information?

[image: image.png]

On Tue, Nov 16, 2021 at 9:05 AM Peter Chen @.***> wrote:

Hi Dr. Sam Xi:

How to make test for test_mmap?

  1. make dma-trace-binary [image: image.png]
  2. ./test_mmap-instrumented There is no dynamic_trace.gz generated. [image: image.png]
  3. make gem5-accel

No rule to make target [image: image.png]

On Fri, Nov 12, 2021 at 11:03 AM Peter Chen @.***> wrote:

I have core dumped at "> sh run.sh". There is not "test_load_store" binary generated before "sh run.sh" [image: image.png] [image: image.png] [image: image.png] [image: image.png]

On Thu, Nov 11, 2021 at 11:20 PM Sam Xi @.***> wrote:

The instructions to build the integration tests are not clear, I agree. Here are the Make targets you have available:

  • gem5-cpu: Builds a version of the binary that runs on the CPU in gem5
  • gem5-accel: Builds a version of the binary that runs the accelerated function in Aladdin and the rest on the CPU.
  • gem: Builds both gem5-cpu and gem5-accel.
  • dma-trace-binary: Builds a version of the binary that is instrumented with LLVM-Tracer. Run this binary to generate a new dynamic_trace.gz. This binary is NOT meant to be simulated in gem5, so do not replace this with test_load_store - they serve completely different purposes.

So to rebuild and rerun a simulation of one of the integration tests:

make clean make dma-trace-binary ./test_load_store-instrumented

This will generate a new dynamic_trace.gz

make gem5-accel sh run.sh

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-966880267, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBD4EIYXC3KOFQ6VV7G3ULS53NANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Dec 04 '21 15:12 peterhchen

For some reason GitHub notifications are not working for me so I was not aware of any of these comments. Sorry for the very delayed response. I just happened to think about this issue today. I've gotten a bit lost on where you are at the moment, but I'll try.

  1. test_mmap: this actually does not involve an accelerator, which is why there is no dynamic trace generated. It simply tests that the emulated mmap syscall function works as intended.
  2. You have indicated some assertion failures in a few of the integration tests; however, you attached an image, and those images are missing from the comments. Please include the text of the assertion instead of a screenshot.
  3. Regarding cache area: this is estimated from CACTI, which requires a configuration file that specifies all the parameters of the cache. Unfortunately this is a poorly integrated aspect of gem5-aladdin: if you change flags like --l1d_size, gem5 does not update the CACTI configuration file, so you don't see any change in area. You'll need to update the config files like test_cacti_cache.cfg, or make a copy of them for your project and set them appropriately.
  4. The common directory is simply to store CACTI configuration files that all the integration tests share.

xyzsam avatar Dec 06 '21 21:12 xyzsam

Hi Dr Xi:

My GitHub should be accessed by anyone. My coworkers and students all can access the documents.

  1. Thanks for the answer. I will ignore test_mmap.

  2. company machine cannot copy the text out, I can only take the picture and sent to you.

  3. For the area, I can change the cacti_cache and get different area. Is there any others? Such as cacti_tlb (table look ahead buffer?) that affect the results?

  4. Thanks a lot of information.

On Mon, Dec 6, 2021 at 1:39 PM Sam Xi @.***> wrote:

For some reason GitHub notifications are not working for me so I was not aware of any of these comments. Sorry for the very delayed response. I just happened to think about this issue today. I've gotten a bit lost on where you are at the moment, but I'll try.

  1. test_mmap: this actually does not involve an accelerator, which is why there is no dynamic trace generated. It simply tests that the emulated mmap syscall function works as intended.
  2. You have indicated some assertion failures in a few of the integration tests; however, you attached an image, and those images are missing from the comments. Please include the text of the assertion instead of a screenshot.
  3. Regarding cache area: this is estimated from CACTI, which requires a configuration file that specifies all the parameters of the cache. Unfortunately this is a poorly integrated aspect of gem5-aladdin: if you change flags like --l1d_size, gem5 does not update the CACTI configuration file, so you don't see any change in area. You'll need to update the config files like test_cacti_cache.cfg, or make a copy of them for your project and set them appropriately.
  4. The common directory is simply to store CACTI configuration files that all the integration tests share.

— You are receiving this because you authored the thread. Reply to this email directly, view it on GitHub https://github.com/harvard-acc/gem5-aladdin/issues/42#issuecomment-987257177, or unsubscribe https://github.com/notifications/unsubscribe-auth/ADBSBDYWCVBEJLL2NJZ33VTUPUUP3ANCNFSM5HTW7UTQ . Triage notifications on the go with GitHub Mobile for iOS https://apps.apple.com/app/apple-store/id1477376905?ct=notification-email&mt=8&pt=524675 or Android https://play.google.com/store/apps/details?id=com.github.android&referrer=utm_campaign%3Dnotification-email%26utm_medium%3Demail%26utm_source%3Dgithub.

-- Sincerely Yours, Peter H. Chen

peterhchen avatar Dec 07 '21 05:12 peterhchen