[WIP] Use pocketfft for Nesterov solver
This PR is intended to replace the FFT library used in ePlace Nesterov solver with pocketfft. Preliminary tests have shown that the library is faster.
Runtime measurements of the 3_3_place_gp stage with stock FFT and pocketff on an Intel(R) i7-8700 @ 3.20GHz CPU:
| stock FFT lib stage runtime [s] | pocketfft stage runtime [s] |
|---|---|
| 554 | 550 |
| 553 | 545 |
| 554 | 540 |
| 546 | 539 |
| 544 | 542 |
| average | |
| 550.2 | 543.2 |
The improvement is expected to increase as soon as dsct and dcst functions are replaced which is a work in progress.
It is helpful to state on what design you made these measurements.
Sorry, I forgot to mention. I've been testing on BlackParrot from OpenROAD-flow-scripts
Hmm. I can see regression tests failing. I need to revisit my changes.
Are you still working on this or should it be closed?
@maliberty Hi. I think we can close it for now. I encountered issues with data layout used in pocketfft which required some conversion that ate up all performance gain.