.\" -*- coding: UTF-8 -*- .\" Copyright 2006, International Business Machines Corp. .\" Copyright, the authors of the Linux man-pages project .\" .\" SPDX-License-Identifier: GPL-2.0-or-later .\" .\"******************************************************************* .\" .\" This file was generated with po4a. Translate the source file. .\" .\"******************************************************************* .TH spu_create 2 "8 février 2026" "Pages du manuel de Linux 6.18" .SH NOM spu_create \- Créer un nouveau contexte spu .SH BIBLIOTHÈQUE Bibliothèque C standard (\fIlibc\fP,\ \fI\-lc\fP) .SH SYNOPSIS .nf \fB#include \fP /* Définition des constantes \fBSPU_*\fP */ \fB#include \fP /* Définition des constantes \fBSYS_*\fP */ \fB#include \fP .P \fBint syscall(SYS_spu_create, const char *\fP\fIpath\fP\fB, unsigned int \fP\fIflags\fP\fB,\fP \fB mode_t \fP\fImode\fP\fB, int \fP\fIneighbor_fd\fP\fB);\fP .fi .P \fIRemarque\fP : la glibc ne fournit pas d'enveloppe pour \fBspu_create\fP(), imposant l'utilisation de \fBsyscall\fP(2). .SH DESCRIPTION The \fBspu_create\fP() system call is used on PowerPC machines that implement the Cell Broadband Engine Architecture in order to access Synergistic Processor Units (SPUs). It creates a new logical context for an SPU in \fIpath\fP and returns a file descriptor associated with it. \fIpath\fP must refer to a nonexistent directory in the mount point of the SPU filesystem (\fBspufs\fP). If \fBspu_create\fP() is successful, a directory is created at \fIpath\fP and it is populated with the files described in \fBspufs\fP(7). .P When a context is created, the returned file descriptor can only be passed to \fBspu_run\fP(2), used as the \fIdirfd\fP argument to the \fB*at\fP family of system calls (e.g., \fBopenat\fP(2)), or closed; other operations are not defined. A logical SPU context is destroyed (along with all files created within the context's \fIpath\fP directory) once the last reference to the context has gone; this usually occurs when the file descriptor returned by \fBspu_create\fP() is closed. .P Le paramètre \fImode\fP (sauf les bits positionnés dans l'\fBumask\fP(2) du processus) indique les permissions utilisées pour créer le nouveau répertoire sur le système de fichiers \fBspufs\fP. Consultez \fBstat\fP(2) pour une liste complète des valeurs de \fImode\fP. .P L'argument \fIneighbor_fd\fP est utilisé seulement quand l'attribut \fBSPU_CREATE_AFFINITY_SPU\fP est spécifié ; voir plus bas. .P Le paramètre \fIflags\fP vaut zéro ou une combinaison par un OU bit à bit des options suivantes\ : .TP \fBSPU_CREATE_EVENTS_ENABLED\fP Plutôt que d'utiliser des signaux pour signaler des erreurs DMA, utiliser l'argument \fIevent\fP de \fBspu_run\fP(2). .TP \fBSPU_CREATE_GANG\fP Créer un gang SPU plutôt qu'un contexte. (Un gang est un groupe de contextes SPU qui sont en relation fonctionnelle entre eux et qui partagent des paramètres d'ordonnancement communs \[em] priorité et politique. Dans le futur, l'ordonnancement de gangs pourra être implémenté faisant que le groupe soit mis en œuvre ou non comme une unité simple.) .IP A new directory will be created at the location specified by the \fIpath\fP argument. This gang may be used to hold other SPU contexts, by providing a pathname that is within the gang directory to further calls to \fBspu_create\fP(). .TP \fBSPU_CREATE_NOSCHED\fP Créer un contexte qui ne soit pas affecté par l'ordonnanceur SPU. Une fois que le contexte est lancé, il ne sera pas déplanifié jusqu'à ce qu'il soit détruit par le processus créateur. .IP Parce que le contexte ne peut pas être supprimé de la SPU, certaines fonctionnalités sont désactivées des contextes \fBSPU_CREATE_NOSCHED\fP. Seul un sous\-ensemble de fichiers sera disponible dans le répertoire du contexte sur le système de fichiers \fBspufs\fP. De plus, les contextes \fBSPU_CREATE_NOSCHED\fP ne peuvent pas créer de fichier de vidage lors d'un plantage. .IP La création de contextes \fBSPU_CREATE_NOSCHED\fP nécessite la capacité \fBCAP_SYS_NICE\fP. .TP \fBSPU_CREATE_ISOLATE\fP Créer un contexte SPU isolé. Les contextes isolés sont protégés de certaines opérations PPE (PowerPC Processing Element), comme l'accès au stockage local de la SPU ou au registre NPC. .IP La création de contextes \fBSPU_CREATE_ISOLATE\fP nécessite également l'attribut \fBSPU_CREATE_NOSCHED\fP. .TP \fBSPU_CREATE_AFFINITY_SPU\fP (depuis Linux 2.6.23) .\" commit 8e68e2f248332a9c3fd4f08258f488c209bd3e0c Créer un contexte avec une affinité pour un autre contexte SPU. Cette information d'affinité est utilisée dans l'algorithme d'ordonnancement du SPU. L'utilisation de cet attribut nécessite que le descripteur de fichier référençant l'autre contexte SPU soit passé dans l'argument \fIneighbor_fd\fP. .TP \fBSPU_CREATE_AFFINITY_MEM\fP (depuis Linux 2.6.23) .\" commit 8e68e2f248332a9c3fd4f08258f488c209bd3e0c Créer un contexte avec une affinité pour la mémoire système. Cette information d'affinité est utilisée dans l'algorithme d'ordonnancement du SPU. .SH "VALEUR RENVOYÉE" S'il réussit, \fBspu_create\fP() renvoie un nouveau descripteur de fichier. En cas d'échec, il renvoie \fB\-1\fP et \fIerrno\fP est défini pour indiquer l'erreur. .SH ERREURS .TP \fBEACCES\fP L'utilisateur en cours n'a pas accès en écriture sur le point de montage du \fBspufs\fP(7). .TP \fBEEXIST\fP Un contexte SPU existe déjà dans le chemin fourni. .TP \fBEFAULT\fP \fIpath\fP is not a valid string pointer in the calling process's address space. .TP \fBEINVAL\fP \fIpath\fP is not a directory in the \fBspufs\fP(7) mount point, or invalid flags have been provided. .TP \fBELOOP\fP Too many symbolic links were found while resolving \fIpath\fP. .TP \fBEMFILE\fP La limite du nombre de descripteurs de fichiers par processus a été atteinte. .TP \fBENAMETOOLONG\fP \fIpath\fP est trop long. .TP \fBENFILE\fP La limite du nombre total de fichiers ouverts pour le système entier a été atteinte. .TP \fBENODEV\fP Un contexte isolé a été demandé, mais le matériel ne prend pas en charge l'isolation SPU. .TP \fBENOENT\fP Part of \fIpath\fP could not be resolved. .TP \fBENOMEM\fP Le noyau n'a pas pu allouer toutes les ressources nécessaires. .TP \fBENOSPC\fP Il n'y a pas suffisamment de ressources SPU disponibles pour créer un nouveau contexte ou la limite spécifique à l'utilisateur du nombre de contextes SPU a été atteinte. .TP \fBENOSYS\fP La fonctionnalité n'est par fournie par le système actuel parce que le matériel ne fournit pas de SPU ou parce que le module spufs n'est pas chargé. .TP \fBENOTDIR\fP A part of \fIpath\fP is not a directory. .TP \fBEPERM\fP L'attribut \fBSPU_CREATE_NOSCHED\fP a été fourni, mais l'utilisateur n'a pas la capacité \fBCAP_SYS_NICE\fP. .SH FICHIERS \fIpath\fP must point to a location beneath the mount point of \fBspufs\fP. By convention, it gets mounted in \fI/spu\fP. .SH NORMES Linux sur PowerPC. .SH HISTORIQUE Linux 2.6.16. .P Avant l'ajout dans Linux 2.6.23 de l'attribut \fBSPU_CREATE_AFFINITY_SPU\fP, l'appel système \fBspu_create\fP() ne prenait que trois arguments (c'est\-à\-dire que l'argument \fIneighbor_fd\fP n'existait pas). .SH NOTES \fBspu_create\fP() is meant to be used from libraries that implement a more abstract interface to SPUs, not to be used from regular applications. See .UR http:\://www.bsc.es\:/projects\:/deepcomputing\:/linuxoncell/ .UE for the recommended libraries. .SH EXEMPLES Consultez \fBspu_run\fP(2) pour un exemple d'utilisation de \fBspu_create\fP() .SH "VOIR AUSSI" \fBclose\fP(2), \fBspu_run\fP(2), \fBcapabilities\fP(7), \fBspufs\fP(7) .PP .SH TRADUCTION La traduction française de cette page de manuel a été créée par Christophe Blaess , Stéphan Rafin , Thierry Vignaud , François Micaux, Alain Portal , Jean-Philippe Guérard , Jean-Luc Coulon (f5ibh) , Julien Cristau , Thomas Huriaux , Nicolas François , Florentin Duneau , Simon Paillard , Denis Barbier , David Prévot et Jean-Pierre Giraud . .PP Cette traduction est une documentation libre ; veuillez vous reporter à la .UR https://www.gnu.org/licenses/gpl-3.0.html GNU General Public License version 3 .UE concernant les conditions de copie et de distribution. Il n'y a aucune RESPONSABILITÉ LÉGALE. .PP Si vous découvrez un bogue dans la traduction de cette page de manuel, veuillez envoyer un message à .MT debian-l10n-french@lists.debian.org .ME .