forbids the event merging logic from sharing events between groups and
 may be used to increase accuracy in this case.
 
+--quiet::
+Don't print output. This is useful with perf stat record below to only
+write data to the perf.data file.
+
 STAT RECORD
 -----------
 Stores stat data into perf data file.
 
        /* Do not print anything if we record to the pipe. */
        if (STAT_RECORD && perf_stat.data.is_pipe)
                return;
+       if (stat_config.quiet)
+               return;
 
        perf_evlist__print_counters(evsel_list, &stat_config, &target,
                                    ts, argc, argv);
                    "threads of same physical core"),
        OPT_BOOLEAN(0, "summary", &stat_config.summary,
                       "print summary for interval mode"),
+       OPT_BOOLEAN(0, "quiet", &stat_config.quiet,
+                       "don't print output (useful with record)"),
 #ifdef HAVE_LIBPFM
        OPT_CALLBACK(0, "pfm-events", &evsel_list, "event",
                "libpfm4 event selector. use 'perf list' to list available events",
                goto out;
        }
 
-       if (!output) {
+       if (!output && !stat_config.quiet) {
                struct timespec tm;
                mode = append_file ? "a" : "w";