Wideband autonomous SDR analysis engine forked from sdr-visual-suite
Вы не можете выбрать более 25 тем Темы должны начинаться с буквы или цифры, могут содержать дефисы(-) и должны содержать не более 35 символов.

28 строки
973B

  1. package gpudemod
  2. // StreamingExtractGPUExec is the internal execution selector for the new
  3. // production-path semantics. It intentionally keeps the public API stable while
  4. // allowing the implementation to evolve from host-side oracle execution toward
  5. // a real GPU polyphase path.
  6. func (r *BatchRunner) StreamingExtractGPUExec(iqNew []complex64, jobs []StreamingExtractJob) ([]StreamingExtractResult, error) {
  7. invocations, err := r.buildStreamingGPUInvocations(iqNew, jobs)
  8. if err != nil {
  9. return nil, err
  10. }
  11. if useGPUHostOracleExecution {
  12. execResults, err := r.executeStreamingGPUHostOraclePrepared(invocations)
  13. if err != nil {
  14. return nil, err
  15. }
  16. return r.applyStreamingGPUExecutionResults(execResults), nil
  17. }
  18. if useGPUNativePreparedExecution {
  19. execResults, err := r.executeStreamingGPUNativePrepared(invocations)
  20. if err != nil {
  21. return nil, err
  22. }
  23. return r.applyStreamingGPUExecutionResults(execResults), nil
  24. }
  25. return nil, ErrUnavailable
  26. }