DPC++ Runtime
Runtime libraries for oneAPI DPC++
graph_builder.cpp File Reference
#include "detail/config.hpp"
#include <CL/sycl/access/access.hpp>
#include <CL/sycl/detail/memory_manager.hpp>
#include <CL/sycl/exception.hpp>
#include <detail/context_impl.hpp>
#include <detail/event_impl.hpp>
#include <detail/queue_impl.hpp>
#include <detail/scheduler/scheduler.hpp>
#include <cstdlib>
#include <cstring>
#include <fstream>
#include <map>
#include <memory>
#include <queue>
#include <set>
#include <vector>
Include dependency graph for graph_builder.cpp:

Go to the source code of this file.


 We provide new interfaces for matrix muliply in this patch:


static bool cl::sycl::detail::doOverlap (const Requirement *LHS, const Requirement *RHS)
 Checks whether two requirements overlap or not. More...
static bool cl::sycl::detail::sameCtx (const ContextImplPtr &LHS, const ContextImplPtr &RHS)
static bool cl::sycl::detail::IsSuitableSubReq (const Requirement *Req)
 Checks if current requirement is requirement for sub buffer. More...
static bool cl::sycl::detail::isAccessModeAllowed (access::mode Required, access::mode Current)
 Checks if the required access mode is allowed under the current one. More...
static access::mode cl::sycl::detail::combineAccessModes (access::mode A, access::mode B)
 Combines two access modes into a single one that allows both. More...
static bool cl::sycl::detail::markNodeAsVisited (Command *Cmd, std::vector< Command * > &Visited)
static void cl::sycl::detail::unmarkVisitedNodes (std::vector< Command * > &Visited)
static void cl::sycl::detail::handleVisitedNodes (std::vector< Command * > &Visited)
static void cl::sycl::detail::printDotRecursive (std::fstream &Stream, std::vector< Command * > &Visited, Command *Cmd)
static Command * cl::sycl::detail::insertMapUnmapForLinkedCmds (AllocaCommandBase *AllocaCmdSrc, AllocaCommandBase *AllocaCmdDst, access::mode MapMode)
static bool cl::sycl::detail::checkHostUnifiedMemory (const ContextImplPtr &Ctx)
static bool cl::sycl::detail::isInteropHostTask (const std::unique_ptr< ExecCGCommand > &Cmd)
static void cl::sycl::detail::combineAccessModesOfReqs (std::vector< Requirement * > &Reqs)