Lib/vc4/Invoke.cpp
/**
 * Run the kernel on vc4 hardware
 */
Run the kernel on vc4 hardware
Run the kernel on vc4 hardware
void invoke(int numQPUs, Data const &launch_messages) {
#ifndef ARM32
  error("invoke() will not run on this platform, only on ARM 32-bits");
  error("Failed to invoke kernel on QPUs\n");
  return;
#else
  enableQPUs();
  auto mb = getMailbox();
  unsigned result = execute_qpu(
    mb,
    numQPUs,
    launch_messages.getAddress(),
    1,
    LibSettings::qpu_timeout()*1000
  );
  disableQPUs();
  if (result != 0) {
    error("Failed to invoke kernel on QPUs\n");
  }
#endif
}
void invoke ( int numQPUs , Data const & launch_messages ) { #ifndef ARM32 error ( " " ) ; error ( " \n " ) ; return ; #else enableQPUs ( ) ; auto mb = getMailbox ( ) ; unsigned result = execute_qpu ( mb , numQPUs , launch_messages . getAddress ( ) , 1 , LibSettings :: qpu_timeout ( ) * 1000 ) ; disableQPUs ( ) ; if ( result != 0 ) { error ( " \n " ) ; } #endif }
Run the kernel on vc4 hardware
Run the kernel on vc4 hardware