summaryrefslogtreecommitdiffstats
path: root/source
diff options
context:
space:
mode:
authorYong He <yonghe@outlook.com>2023-10-10 22:07:56 -0700
committerGitHub <noreply@github.com>2023-10-11 13:07:56 +0800
commit61132c7e198fe372fc739ba0a1edbc8efef386d2 (patch)
treecde10a2e6fc04369dbf29e594670b4a91d6653f4 /source
parentcd9a8b2d3fe0e319488ed10ff7147296338685b6 (diff)
Report spirv-opt time. (#3271)
* Report spirv-opt time. * Removing timing logic in `loadModule`. --------- Co-authored-by: Yong He <yhe@nvidia.com>
Diffstat (limited to 'source')
-rw-r--r--source/slang/slang-emit.cpp5
-rw-r--r--source/slang/slang.cpp2
2 files changed, 4 insertions, 3 deletions
diff --git a/source/slang/slang-emit.cpp b/source/slang/slang-emit.cpp
index 57ca736e3..6f78c5d66 100644
--- a/source/slang/slang-emit.cpp
+++ b/source/slang/slang-emit.cpp
@@ -1308,11 +1308,14 @@ SlangResult emitSPIRVForEntryPointsDirectly(
case OptimizationLevel::Maximal: downstreamOptions.optimizationLevel = DownstreamCompileOptions::OptimizationLevel::Maximal; break;
default: SLANG_ASSERT(!"Unhandled optimization level"); break;
}
-
+ auto downstreamStartTime = std::chrono::high_resolution_clock::now();
if (SLANG_SUCCEEDED(compiler->compile(downstreamOptions, optimizedArtifact.writeRef())))
{
artifact = _Move(optimizedArtifact);
}
+ auto downstreamElapsedTime =
+ (std::chrono::high_resolution_clock::now() - downstreamStartTime).count() * 0.000000001;
+ codeGenContext->getSession()->addDownstreamCompileTime(downstreamElapsedTime);
SLANG_RETURN_ON_FAIL(passthroughDownstreamDiagnostics(codeGenContext->getSink(), compiler, artifact));
}
diff --git a/source/slang/slang.cpp b/source/slang/slang.cpp
index 46ccb6ce9..af853102a 100644
--- a/source/slang/slang.cpp
+++ b/source/slang/slang.cpp
@@ -3064,8 +3064,6 @@ RefPtr<Module> Linkage::loadModule(
DiagnosticSink* sink,
const LoadedModuleDictionary* additionalLoadedModules)
{
- CompileTimerRAII recordCompileTime(static_cast<Session*>(getGlobalSession()));
-
RefPtr<FrontEndCompileRequest> frontEndReq = new FrontEndCompileRequest(this, nullptr, sink);
frontEndReq->additionalLoadedModules = additionalLoadedModules;