https://github.com/halide/Halide
Raw File
Tip revision: 31c40930fe40ba9093984cd4bb562a8ffc71e85d authored by Steven Johnson on 20 January 2021, 23:30:28 UTC
Update HalideRuntime.h
Tip revision: 31c4093
ParallelRVar.h
#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>

#include "Util.h"  // for HALIDE_EXPORT_FOR_PLUGINS

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.
 */
HALIDE_EXPORT_FOR_PLUGINS bool can_parallelize_rvar(const std::string &rvar,
                                                    const std::string &func,
                                                    const Definition &r);

}  // namespace Internal
}  // namespace Halide

#endif
back to top