Loading benchmarks/qcor-mlir/qsharp/qsc.rsp 0 → 100644 +1 −0 Original line number Diff line number Diff line --proj "quantum" --input "$$FILE_NAME$$" --output "obj/qsharp/" --references "/root/.nuget/packages/microsoft.bcl.asyncinterfaces/1.1.0/ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.BondSchemas.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCompilationManager.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCompiler.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCore.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsDataStructures.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsDocumentationParser.dll" "/root/.nuget/packages/microsoft.quantum.qsharp.core/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QSharp.Core.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsOptimizations.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsSyntaxProcessor.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsTextProcessor.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsTransformations.dll" "/root/.nuget/packages/microsoft.quantum.runtime.core/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Runtime.Core.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulation.Common.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulation.QCTraceSimulatorRuntime.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulators.dll" "/root/.nuget/packages/microsoft.quantum.standard/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Standard.dll" "/root/.nuget/packages/numsharp/0.20.5/lib/netstandard2.0/NumSharp.Core.dll" --load "/root/.nuget/packages/microsoft.quantum.csharpgeneration/0.14.2011120240/build//../lib/netstandard2.1/Microsoft.Quantum.CsharpGeneration.dll" --runtime Unknown --package-load-fallback-folders "/workspaces/qcor/qcor/benchmarks/qcor-mlir/qsharp/bin/Debug/netstandard2.1/" --assembly-properties ProcessorArchitecture:Unspecified QsharpOutputType:QsharpLibrary ExecutionTarget:Any DocsPackageId:quantum benchmarks/qcor-mlir/qsharp_compile.py 0 → 100644 +41 −0 Original line number Diff line number Diff line # NOTE: we **only** compile the Q# source using the # Q# command line tool, i.e. not building the whole .NET project. # We don't time the QIR generation, just using the **Release** version # of the QSC (Q# compiler) to compile the Q# source file. import os, glob, time, csv dirPath = os.path.dirname(os.path.realpath(__file__)) os.chdir(dirPath + "/qsharp") listOfSrcFiles = glob.glob(dirPath + "/qsharp/*.qs") # We must run smaller files first. # It may hang indefinitely for larger files... listOfSrcFiles = sorted(listOfSrcFiles, key = os.path.getsize) #Time to compile via syntax handler headers = ["Test Case", "total time"] firstWrite = True # HARD-CODED qsc location, updated according to your system qsc_exe = "/root/.nuget/packages/microsoft.quantum.sdk/0.14.2011120240/tools/qsc/qsc.dll" # Q# build config file (has a placeholder for the qs source file) response_file = dirPath + "/qsharp/qsc.rsp" for file in listOfSrcFiles: rowData = [os.path.splitext(os.path.basename(file))[0]] with open(response_file) as f: # Replace the particular file name newText=f.read().replace("$$FILE_NAME$$", os.path.basename(file)) with open(dirPath + "/qsharp/qsc_run.rsp", "w") as f: f.write(newText) # Start compilation start_time = time.time() os.system("dotnet \"" + qsc_exe + "\" build --response-files qsc_run.rsp") rowData.append(time.time() - start_time) with open('result_qsharp.csv', 'a', newline='') as csvfile: resultWriter = csv.writer(csvfile) if firstWrite is True: resultWriter.writerow(headers) firstWrite = False # Write data resultWriter.writerow(rowData) No newline at end of file Loading
benchmarks/qcor-mlir/qsharp/qsc.rsp 0 → 100644 +1 −0 Original line number Diff line number Diff line --proj "quantum" --input "$$FILE_NAME$$" --output "obj/qsharp/" --references "/root/.nuget/packages/microsoft.bcl.asyncinterfaces/1.1.0/ref/netstandard2.1/Microsoft.Bcl.AsyncInterfaces.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.BondSchemas.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCompilationManager.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCompiler.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsCore.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsDataStructures.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsDocumentationParser.dll" "/root/.nuget/packages/microsoft.quantum.qsharp.core/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QSharp.Core.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsOptimizations.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsSyntaxProcessor.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsTextProcessor.dll" "/root/.nuget/packages/microsoft.quantum.compiler/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.QsTransformations.dll" "/root/.nuget/packages/microsoft.quantum.runtime.core/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Runtime.Core.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulation.Common.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulation.QCTraceSimulatorRuntime.dll" "/root/.nuget/packages/microsoft.quantum.simulators/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Simulators.dll" "/root/.nuget/packages/microsoft.quantum.standard/0.14.2011120240/lib/netstandard2.1/Microsoft.Quantum.Standard.dll" "/root/.nuget/packages/numsharp/0.20.5/lib/netstandard2.0/NumSharp.Core.dll" --load "/root/.nuget/packages/microsoft.quantum.csharpgeneration/0.14.2011120240/build//../lib/netstandard2.1/Microsoft.Quantum.CsharpGeneration.dll" --runtime Unknown --package-load-fallback-folders "/workspaces/qcor/qcor/benchmarks/qcor-mlir/qsharp/bin/Debug/netstandard2.1/" --assembly-properties ProcessorArchitecture:Unspecified QsharpOutputType:QsharpLibrary ExecutionTarget:Any DocsPackageId:quantum
benchmarks/qcor-mlir/qsharp_compile.py 0 → 100644 +41 −0 Original line number Diff line number Diff line # NOTE: we **only** compile the Q# source using the # Q# command line tool, i.e. not building the whole .NET project. # We don't time the QIR generation, just using the **Release** version # of the QSC (Q# compiler) to compile the Q# source file. import os, glob, time, csv dirPath = os.path.dirname(os.path.realpath(__file__)) os.chdir(dirPath + "/qsharp") listOfSrcFiles = glob.glob(dirPath + "/qsharp/*.qs") # We must run smaller files first. # It may hang indefinitely for larger files... listOfSrcFiles = sorted(listOfSrcFiles, key = os.path.getsize) #Time to compile via syntax handler headers = ["Test Case", "total time"] firstWrite = True # HARD-CODED qsc location, updated according to your system qsc_exe = "/root/.nuget/packages/microsoft.quantum.sdk/0.14.2011120240/tools/qsc/qsc.dll" # Q# build config file (has a placeholder for the qs source file) response_file = dirPath + "/qsharp/qsc.rsp" for file in listOfSrcFiles: rowData = [os.path.splitext(os.path.basename(file))[0]] with open(response_file) as f: # Replace the particular file name newText=f.read().replace("$$FILE_NAME$$", os.path.basename(file)) with open(dirPath + "/qsharp/qsc_run.rsp", "w") as f: f.write(newText) # Start compilation start_time = time.time() os.system("dotnet \"" + qsc_exe + "\" build --response-files qsc_run.rsp") rowData.append(time.time() - start_time) with open('result_qsharp.csv', 'a', newline='') as csvfile: resultWriter = csv.writer(csvfile) if firstWrite is True: resultWriter.writerow(headers) firstWrite = False # Write data resultWriter.writerow(rowData) No newline at end of file