From 8a9e518371df03b3f382e0fe869da83751fdda0b Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Wed, 10 Nov 2021 17:33:22 -0500 Subject: Interprocess communication via pipes (#2009) * #include an absolute path didn't work - because paths were taken to always be relative. * Use 'Process' to communicate with an command line tool. * Remove slang-win-stream * Tidy up windows ProcessUtil. * First version of BufferedReadStream. * Windows working IPC for steams. * Test proxy count option. * Split Process/ProcessUtil. Process is platform dependant. ProcessUtil are functions that are platform independent. * First implementation of Unix Process interface. * Unix process compiles on cygwin. * Fix typo in unix process. * Separate unix pipe stream error of invalid access, from pipe availability. * Fix in standard line extraction. * Make fd non blocking. * Fix issues with Windows Process streams. * Added UnixPipe. * Some fixes around UnixPipeStream. * Make a unix stream closed explicit. * Hack to debug linux process/stream. * Revert to old linux pipe handling. * Pass executable path for unit tests. Split out CommandLine into own source. * Small improvements in process/command line. * Check process behavior with crash. * Make stderr and stdout unbuffered for crash testing. * Only turn disable buffering in crash test. * Disable crash test on CI. * Fix crash on clang/linux. * Enable crash test. Remove _appendBuffer as can use StreamUtil functionality. --- tools/render-test/render-test-main.cpp | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) (limited to 'tools/render-test') diff --git a/tools/render-test/render-test-main.cpp b/tools/render-test/render-test-main.cpp index 689794cef..a3cde1c0a 100644 --- a/tools/render-test/render-test-main.cpp +++ b/tools/render-test/render-test-main.cpp @@ -63,7 +63,7 @@ using namespace Slang; static void _outputProfileTime(uint64_t startTicks, uint64_t endTicks) { WriterHelper out = StdWriters::getOut(); - double time = double(endTicks - startTicks) / ProcessUtil::getClockFrequency(); + double time = double(endTicks - startTicks) / Process::getClockFrequency(); out.print("profile-time=%g\n", time); } @@ -991,7 +991,7 @@ Result RenderTestApp::update() } commandBuffer->close(); - m_startTicks = ProcessUtil::getClockTick(); + m_startTicks = Process::getClockTick(); m_queue->executeCommandBuffer(commandBuffer); m_queue->wait(); @@ -1030,7 +1030,7 @@ Result RenderTestApp::update() // Note we don't do the same with screen rendering -> as that will do a lot of work, which may swamp any computation // so can only really profile compute shaders at the moment - const uint64_t endTicks = ProcessUtil::getClockTick(); + const uint64_t endTicks = Process::getClockTick(); _outputProfileTime(m_startTicks, endTicks); } -- cgit v1.2.3