Loading...
Searching...
No Matches
ParallelRVar.h
Go to the documentation of this file.
#ifndef HALIDE_PARALLEL_RVAR_H
#define HALIDE_PARALLEL_RVAR_H
/** \file
*
* Method for checking if it's safe to parallelize an update
* definition across a reduction variable.
*/
#include <string>
namespace Halide {
namespace Internal {
class Definition;
/** Returns whether or not Halide can prove that it is safe to
* parallelize an update definition across a specific variable. If
* this returns true, it's definitely safe. If this returns false, it
* may still be safe, but Halide couldn't prove it.
*/
bool can_parallelize_rvar(const std::string &rvar,
const std::string &func,
const Definition &r);
} // namespace Internal
} // namespace Halide
#endif
Halide::Internal::Definition
A Function definition which can either represent a init or an update definition.
Definition Definition.h:38
Halide::Internal
Definition AbstractGenerator.h:24
Halide::Internal::can_parallelize_rvar
bool can_parallelize_rvar(const std::string &rvar, const std::string &func, const Definition &r)
Returns whether or not Halide can prove that it is safe to parallelize an update definition across a ...
Halide
This file defines the class FunctionDAG, which is our representation of a Halide pipeline,...
Definition AbstractGenerator.h:19