Quellcodebibliothek Statistik Leitseite products/Sources/formale Sprachen/C/Linux/drivers/gpu/drm/v3d/   (Open Source Betriebssystem Version 6.17.9©)  Datei vom 24.10.2025 mit Größe 1 kB image not shown  

Quelle  v3d_sysfs.c   Sprache: C

 
// SPDX-License-Identifier: MIT
/*
 * Copyright © 2023 Igalia S.L.
 */


#include <linux/sched/clock.h>
#include <linux/sysfs.h>

#include "v3d_drv.h"

static ssize_t
gpu_stats_show(struct device *dev, struct device_attribute *attr, char *buf)
{
 struct drm_device *drm = dev_get_drvdata(dev);
 struct v3d_dev *v3d = to_v3d_dev(drm);
 enum v3d_queue queue;
 u64 timestamp = local_clock();
 ssize_t len = 0;

 len += sysfs_emit(buf, "queue\ttimestamp\tjobs\truntime\n");

 for (queue = 0; queue < V3D_MAX_QUEUES; queue++) {
  struct v3d_stats *stats = &v3d->queue[queue].stats;
  u64 active_runtime, jobs_completed;

  v3d_get_stats(stats, timestamp, &active_runtime, &jobs_completed);

  /* Each line will display the queue name, timestamp, the number
 * of jobs sent to that queue and the runtime, as can be seem here:
 *
 * queue timestamp jobs runtime
 * bin 239043069420 22620 17438164056
 * render 239043069420 22619 27284814161
 * tfu 239043069420 8763 394592566
 * csd 239043069420 3168 10787905530
 * cache_clean 239043069420 6127 237375940
 */

  len += sysfs_emit_at(buf, len, "%s\t%llu\t%llu\t%llu\n",
         v3d_queue_to_string(queue),
         timestamp, jobs_completed, active_runtime);
 }

 return len;
}
static DEVICE_ATTR_RO(gpu_stats);

static struct attribute *v3d_sysfs_entries[] = {
 &dev_attr_gpu_stats.attr,
 NULL,
};

static struct attribute_group v3d_sysfs_attr_group = {
 .attrs = v3d_sysfs_entries,
};

int
v3d_sysfs_init(struct device *dev)
{
 return sysfs_create_group(&dev->kobj, &v3d_sysfs_attr_group);
}

void
v3d_sysfs_destroy(struct device *dev)
{
 return sysfs_remove_group(&dev->kobj, &v3d_sysfs_attr_group);
}

Messung V0.5
C=96 H=91 G=93

¤ Dauer der Verarbeitung: 0.2 Sekunden  ¤

*© Formatika GbR, Deutschland






Wurzel

Suchen

Beweissystem der NASA

Beweissystem Isabelle

NIST Cobol Testsuite

Cephes Mathematical Library

Wiener Entwicklungsmethode

Haftungshinweis

Die Informationen auf dieser Webseite wurden nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit, noch Qualität der bereit gestellten Informationen zugesichert.

Bemerkung:

Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.