Getting HelloSpatial to work on AWS F1

144 views
Skip to first unread message

Naums Mogers

unread,
Dec 24, 2019, 6:53:42 AM12/24/19
to Spatial Users
Hi,

I've been following the manual on setting up Spatial on an AWS F1 (f1.2xlarge) instance: https://github.com/stanford-ppl/spatial-multiverse/blob/master/docs/aws.md
I've managed to complete all steps successfully with the HelloSpatial example, but encountered a problem at the very last one:
`sudo ./Top 1 1` allocates memories and starts the run, but hangs right after `[run] Begin`. Full output below.

Any pointers on how to proceed? Am I passing wrong arguments? Any advice would be greatly appreciated.

Full `Top` output:
$ sudo ./Top 1 1
[WARNING]: DELITE_NUM_THREADS undefined, defaulting to 1
Executing with 1 thread(s)
Adjusted current_heap_ptr to 256
Allocate mem of size 64 at (nil)
Adjusted current_heap_ptr to 4352
Allocate mem of size 1024 at 0x100
Adjusted current_heap_ptr to 20736
Allocate mem of size 64*64 at 0x1100
Adjusted current_heap_ptr to 21760
Allocate mem of size 2*2*2*2*16 at 0x5100
[memcpy HOST->DEV] hostmem = 0x8cf1a0, devmem = 0, size = 100
[memcpy HOST->DEV] hostmem = 0x8cf2b0, devmem = 100, size = 1000
[memcpy HOST->DEV] hostmem = 0x8d02c0, devmem = 1100, size = 4000
[memcpy HOST->DEV] hostmem = 0x8d42f0, devmem = 5100, size = 400
Adjusted current_heap_ptr to 25856
Allocate mem of size 32*32 at 0x5500
Adjusted current_heap_ptr to 29952
Allocate mem of size 1024 at 0x6500
Naums: start
[run] Begin

// Hangs here

Naums Mogers

unread,
Dec 24, 2019, 9:29:43 AM12/24/19
to Spatial Users
UPD:
I've modified include/FringeContextAWS.h:run() to not just wait for the status change by polling aws_peek, but also breaking the polling loop after 30 seconds. Now, HelloSpatial returns, but all buffers are filled with "-1", and all tests fail. It's like the Accel block wasn't even executed on the FPGA.

Matt F

unread,
Dec 26, 2019, 6:45:42 PM12/26/19
to Spatial Users
Hi Naums,

I'm not sure what is happening yet but I'm curious about whether there were any secret errors during synthesis that the flow ignored.  Would you be able to zip up and send the generated directories with all the logs and I can take a look?  

Thanks

Naums Mogers

unread,
Jan 9, 2020, 12:47:43 PM1/9/20
to Spatial Users
Hi Matt,

Thanks for getting back to me! Here are the archived logs:
Let me know if I can provide more information. Thanks!

Matt F

unread,
Jan 14, 2020, 7:45:39 PM1/14/20
to spatial-l...@googlegroups.com
Hi Naums,

Nothing looks suspicious in the logs, but I have two ideas. 

1) I'm not sure if we tested the scatter/gather engines on the aws backend yet.  I would expect them to work, but they are significantly more complicated than dense dram transactions.  You can try commenting out these lines: https://github.com/stanford-ppl/spatial/blob/c1972756e7a1300b5c2870876059c3e0aaa391c7/apps/src/HelloSpatial.scala#L48-L51

2) Maybe the vivado/AMI/aws-fpga versions are doing something unexpected.   The versions we tested with here are:
  • AMI 1.5.0 (includes Vivado 2018.2)
  • aws-fpga 1.4.7
or
  • AMI 1.6.0 (includes Vivado 2018.3)
  • aws-fpga 1.4.8


Reply all
Reply to author
Forward
0 new messages