MCPcopy
hub / github.com/tensorflow/tfjs / aggregateKernelTime

Function aggregateKernelTime

e2e/benchmarks/benchmark_util.js:519–534  ·  view source on GitHub ↗

* Aggregate kernels by name and sort the array in non-ascending order of time. * Return an array of objects with `name` and `timeMs` fields. * * @param {Array } kernels An array of kernel information objects. Each * object must include `name` (string) and `kernelTimeMs` (number) field

(kernels)

Source from the content-addressed store, hash-verified

517 * object must include `name` (string) and `kernelTimeMs` (number) fields.
518 */
519function aggregateKernelTime(kernels) {
520 const aggregatedKernelTime = {};
521 kernels.forEach(kernel => {
522 const oldAggregatedKernelTime = aggregatedKernelTime[kernel.name];
523 if (oldAggregatedKernelTime == null) {
524 aggregatedKernelTime[kernel.name] = kernel.kernelTimeMs;
525 } else {
526 aggregatedKernelTime[kernel.name] =
527 oldAggregatedKernelTime + kernel.kernelTimeMs;
528 }
529 });
530
531 return Object.entries(aggregatedKernelTime)
532 .map(([name, timeMs]) => ({name, timeMs}))
533 .sort((a, b) => b.timeMs - a.timeMs);
534}
535
536/**
537 * This map descripes tunable flags and theior corresponding types.

Callers 2

profileInferenceFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected

Used in the wild real call sites across dependent graphs

searching dependent graphs…