oneAPI-samples
oneAPI-samples copied to clipboard
FPGA: Add new sample `SVD`
Description
Adding a new FPGA reference design Singular Value Decomposition.
Testing
Running reg-tests, will update test links once finished.
Checklist
Administrative
- [x] Review sample design with the appropriate Domain Expert: <insert Name Here>
- [x] If you have any new dependencies/binaries, inform the oneAPI Code Samples Project Manager
Code Development
- [x] Implement coding guidelines and ensure code quality. see wiki for details
- [x] Adhere to readme template
- [x] Enforce format via clang-format config file
- [x] Adhere to sample.json specification. https://github.com/oneapi-src/oneAPI-samples/wiki/sample-json-specification
- [ ] Ensure/create CI test configurations for sample (ciTests field) https://github.com/oneapi-src/oneAPI-samples/wiki/sample-json-ci-test-object
- [ ] Run jsonlint on sample.json to verify json syntax. www.jsonlint.com
Security and Legal
- [ ] OSPDT Approval (see Project Manager for assistance)
- [ ] Compile using the following compiler flags and fix any warnings, the falgs are: "/Wall -Wformat-security -Werror=format-security"
- [ ] Bandit Scans (Python only)
- [ ] Virus scan
Review
- [x] Review DPC++ code with Paul Peterseon. (GitHub User: pmpeter1)
- [x] Review readme with Tom Lenth(@tomlenth) and/or Project Manager
- [ ] Tested using Dev Cloud when applicable
Adding @pmpeter1 and @tomlenth per request by @KevinUTAT
The code looks good, did you find the time to benchmark the kernel versus a CPU execution using Python or Matlab?
The code looks good, did you find the time to benchmark the kernel versus a CPU execution using Python or Matlab?
yes, with the same 32x32 input, numpy.linalg.svd gives around 1000 matrices/s on the farm machine (pretty much the same as what we get on n6001) and Matlab isn't as good at around 600 matrices/s.