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

Check FPGA emulation mode with oneAPI docker images #5

Open
jjfumero opened this issue Jul 26, 2023 · 2 comments
Open

Check FPGA emulation mode with oneAPI docker images #5

jjfumero opened this issue Jul 26, 2023 · 2 comments
Assignees
Labels
bug Something isn't working

Comments

@jjfumero
Copy link
Member

The FPGA emulation mode does not seem to be working with the latest oneAPI (2023.2) and TornadoVM.
This task is for checking that the configuration within Docker is correct since FPGAs can be used as standalone devices in TornadoVM.

@jjfumero jjfumero added the bug Something isn't working label Jul 26, 2023
@jjfumero jjfumero self-assigned this Jul 26, 2023
@stratika
Copy link
Collaborator

stratika commented Apr 9, 2024

I tried with the recent image that I built for GraalPy and Intel devices with oneAPI, that contains the following devices:

/polyglotImages/polyglot-graalpy/tornadovm-polyglot-intel.sh tornado --devices
WARNING: Using incubator modules: jdk.incubator.vector

Number of Tornado drivers: 1
Driver: OpenCL
  Total number of OpenCL devices  : 3
  Tornado device=0:0  (DEFAULT)
	OPENCL --  [Intel(R) OpenCL Graphics] -- Intel(R) Iris(R) Xe Graphics
		Global Memory Size: 28.7 GB
		Local Memory Size: 64.0 KB
		Workgroup Dimensions: 3
		Total Number of Block Threads: [512]
		Max WorkGroup Configuration: [512, 512, 512]
		Device OpenCL C version: OpenCL C 1.2

  Tornado device=0:1
	OPENCL --  [Intel(R) OpenCL] -- 12th Gen Intel(R) Core(TM) i9-12900H
		Global Memory Size: 31.0 GB
		Local Memory Size: 32.0 KB
		Workgroup Dimensions: 3
		Total Number of Block Threads: [8192]
		Max WorkGroup Configuration: [8192, 8192, 8192]
		Device OpenCL C version: OpenCL C 3.0

  Tornado device=0:2
	OPENCL --  [Intel(R) FPGA Emulation Platform for OpenCL(TM)] -- Intel(R) FPGA Emulation Device
		Global Memory Size: 31.0 GB
		Local Memory Size: 256.0 KB
		Workgroup Dimensions: 3
		Total Number of Block Threads: [67108864]
		Max WorkGroup Configuration: [67108864, 67108864, 67108864]
		Device OpenCL C version: OpenCL C 1.2

and I ran DFT in emulation mode:

./polyglotImages/polyglot-graalpy/tornadovm-polyglot-intel.sh tornado --threadInfo  --jvm="-Ds0.t0.device=0:2" -m tornado.examples/uk.ac.manchester.tornado.examples.dynamic.DFTMT 256 default 1
WARNING: Using incubator modules: jdk.incubator.vector
Initialization time:  322679681 ns

Version running: default ! 
Task info: s0.t0
	Backend           : OPENCL
	Device            : Intel(R) FPGA Emulation Device CL_DEVICE_TYPE_ACCELERATOR (available)
	Dims              : 1
	Global work offset: [0]
	Global work size  : [256]
	Local  work size  : [64, 1, 1]
	Number of workgroups  : [4]

Total time:  390111620 ns 

Validation: SUCCESS

@jjfumero
Copy link
Member Author

jjfumero commented Apr 9, 2024

Thank you @stratika . Good to know that using the oneAPI 2024.1 works with the FPGA in TornadoVM

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug Something isn't working
Projects
Status: No status
Development

No branches or pull requests

2 participants