From b550f9b77e9fa11d11078735c32ba9847e5df773 Mon Sep 17 00:00:00 2001 From: Han Zhu Date: Tue, 19 Jul 2022 16:50:28 -0700 Subject: [PATCH] [largeNbDicts] Print more metrics into csv file Summary: Add column headers and data for whether it's a compression or a decompression run, compression level, nbDicts and dictAttachPref in additional to compr/decompr speed. Test Plan: Example output: ``` ./largeNbDicts Compression/Decompression,Level,nbDicts,dictAttachPref,Speed Compression,1,1,0,300.9 Compression,1,1,1,296.4 Compression,1,1,2,307.8 Compression,1,10,0,292.3 Compression,1,100,0,293.3 Compression,3,110,0,106.0 Decompression,-1,110,-1,155.6 Decompression,-1,110,-1,709.4 Decompression,-1,120,-1,709.1 Decompression,-1,120,-1,734.6 ``` --- contrib/largeNbDicts/largeNbDicts.c | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/contrib/largeNbDicts/largeNbDicts.c b/contrib/largeNbDicts/largeNbDicts.c index f1a80c8e..bb1c16d4 100644 --- a/contrib/largeNbDicts/largeNbDicts.c +++ b/contrib/largeNbDicts/largeNbDicts.c @@ -716,12 +716,28 @@ static int benchMem(slice_collection_t dstBlocks, csvFile = fopen(csvFileName, "wt"); assert(csvFile); fprintf(csvFile, "%s\n", exeName); + /* Print table headers */ + fprintf( + csvFile, + "Compression/Decompression,Level,nbDicts,dictAttachPref,Speed\n"); } else { fclose(csvFile); csvFile = fopen(csvFileName, "at"); assert(csvFile); } - fprintf(csvFile, "%.1f\n", bestSpeed); + + int cLevel = -1; + int dictAttachPref = -1; + if (benchCompression) { + ZSTD_CCtxParams_getParameter(cctxParams, ZSTD_c_compressionLevel, + &cLevel); + ZSTD_CCtxParams_getParameter(cctxParams, ZSTD_c_forceAttachDict, + &dictAttachPref); + } + fprintf(csvFile, "%s,%d,%ld,%d,%.1f\n", + benchCompression ? "Compression" : "Decompression", cLevel, + benchCompression ? ci.nbDicts : di.nbDicts, dictAttachPref, + bestSpeed); fclose(csvFile); free(csvFileName);