DEENESPTFRRUARHIKOZHNL

clase ara::shwa::AcceleratorSelector

Diese Seite wurde vollständig KI-generiert auf Basis von SWS Safe Hardware Acceleration (R25-11) — kein offizieller AUTOSAR-Text und keine automatisch extrahierte API-Seite wie die übrigen Module. Als Interpretation gekennzeichnete Aussagen sind Schlussfolgerungen aus den Quellen.

[AP_SWS_SHWA_00411] texto aún no importado Upstream: RS_SHWA_00006

class AcceleratorSelector : public DeviceSelector {...};

Die Spezifikation definiert diesen Klassentyp mit der gezeigten Schnittstelle.

Header-Datei#include "ara/shwa/device_selector.h"
Scopenamespace ara::shwa

Guía del usuarioGENERADO POR IA

Evalúa y selecciona dispositivos aceleradores de hardware en función de una estrategia selectora para aplicaciones adaptativas.
GENERADO POR IA no revisado Modelo: gemini-3.8-flash-medium · Esfuerzo: medium · Temperatura: no controlable · Prompt: ffcb3b3d577e Procedencia Preguntas abiertas (3)
traducido de la guía alemanagemini-3.8-flash-low · 2026-10-13 · Original en alemán

Evalúa y selecciona dispositivos aceleradores de hardware en función de una estrategia selectora para aplicaciones adaptativas.

La clase ara::shwa::AcceleratorSelector sirve en el módulo de aceleración de hardware para la evaluación y selección de dispositivos aceleradores adecuados con arreglo a una estrategia selectora ([AP_SWS_SHWA_00413]). Mediante SelectDevice() se puede seleccionar directamente un Device adecuado, mientras que operator() permite una evaluación numérica individual de dispositivos específicos ([AP_SWS_SHWA_00412]). Dado que ambas operaciones están especificadas como no seguras para subprocesos, un uso concurrente requiere sincronización externa. Los posibles errores, tales como recursos saturados o funciones no soportadas, se notifican sin reversión a través de ara::core::Result.

Contexto

La clase ara::shwa::AcceleratorSelector actúa en el módulo shwa (Hardware Acceleration) de AUTOSAR Adaptive Platform como selector especializado para dispositivos aceleradores de hardware. Según la sintaxis de la clase, deriva públicamente de la interfaz base DeviceSelector (class AcceleratorSelector : public DeviceSelector). Su tarea principal consiste en evaluar dispositivos aceleradores físicos o lógicos (Device) conforme a una estrategia selectora definida o seleccionar un dispositivo adecuado ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]).

Entre los interlocutores figuran la lógica de aplicación de nivel superior, que solicita recursos de aceleración para tareas de cálculo intensivo, la clase base heredada DeviceSelector, así como las instancias de Device analizadas o devueltas por el selector. Los criterios de selección en sí están encapsulados en la implementación concreta de la estrategia selectora ([AP_SWS_SHWA_00413]).

diag_selector_context Anwendung Anwendung AcceleratorSelector AcceleratorSelector Anwendung->AcceleratorSelector usa DeviceSelector DeviceSelector AcceleratorSelector->DeviceSelector spezialisiert Device Device AcceleratorSelector->Device selektiert / bewertet

Diagrama de contexto: Integración de AcceleratorSelector en interacción con la aplicación, DeviceSelector y Device. Fuentes: [AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]

Ciclo de vida

La instanciación de AcceleratorSelector suele tener lugar de forma específica de la aplicación o a través de los correspondientes mecanismos de fábrica antes de la primera solicitud de dispositivo. Pregunta Q-933e42753f63687c (abierta) La destrucción se produce en cuanto la lógica de selección deja de ser necesaria para el componente de aplicación en cuestión; la especificación no prescribe estados intermedios ni fases de ciclo de vida específicos.

En lo relativo a la concurrencia, las dos operaciones proporcionadas —SelectDevice() y operator()— están especificadas expresamente como no seguras para subprocesos («not thread-safe») ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Aunque ambos métodos están declarados como const, las llamadas paralelas a través de la misma instancia o sobre los mismos recursos de hardware subyacentes deben ser sincronizadas externamente por el llamador.

Ruta de uso

La interacción con AcceleratorSelector se realiza a través de dos vías de uso alternativas: la selección automática directa y la evaluación individual de candidatos. Mediante el método virtual SelectDevice(), la aplicación solicita directamente la selección de un dispositivo adecuado según la estrategia implementada ([AP_SWS_SHWA_00413]). En caso de éxito, la llamada devuelve una instancia de Device encapsulada en un ara::core::Result.

De forma alternativa, el operador de llamada sobrecargado operator() permite la evaluación paso a paso de dispositivos conocidos individuales ([AP_SWS_SHWA_00412]). El valor entero devuelto por operator() (int) representa presumiblemente una puntuación relativa de idoneidad, a partir de la cual la propia aplicación puede realizar una clasificación o un filtrado. Interpretación: SelectDevice() encapsula de manera autónoma la estrategia de selección completa, mientras que operator() permite comparaciones de grano fino entre dispositivos individuales. Pregunta Q-e2de44ef0c9e936d (abierta)

Evaluación y selección de dispositivos aceleradoresAplicaciónAcceleratorSelectorUse Case: KandidatenbewertungloopPara cada dispositivo candidatooperator()(device)ara::core::Result<int> (Score)Use Case: Selección directa de dispositivoSelectDevice()ara::core::Result<Device>

Diagrama de secuencias: flujo de llamadas en la evaluación y selección de dispositivos. Fuentes: [AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]

Escenarios de error

Ambas operaciones están declaradas como noexcept y garantizan seguridad frente a excepciones ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Los errores se transmiten exclusivamente a través del tipo de retorno ara::core::Result. Se especifican los siguientes códigos de error del ámbito ShwaErrorCode:

Para ambas funciones se establece que no existe semántica de reversión (no_rollback_semantics) ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Si se produce un error, no se restablece automáticamente un estado previo del sistema o del hardware. Quienes realizan la llamada deben comprobar el código de error del objeto Result e iniciar, en su caso, intentos de reintento o vías alternativas de selección.

Esta guía fue generada por una IA sobre la base de la especificación para AUTOSAR Adaptive R25-11.

Métodos

SelectDevice función

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

virtual ara::core::Result< Device > SelectDevice () const noexcept override;

Operadores

operator() función

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

ara::core::Result< int > operator() (const Device &device) const noexcept override;

Detalles

función SelectDevice [AP_SWS_SHWA_00413] Upstream: RS_SHWA_00006, RS_SHWA_00007

virtual ara::core::Result< Device > SelectDevice () const noexcept override;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::AcceleratorSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00413
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00413@rel:R25-11#4dfbafc9
Content hash
4dfbafc9
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00413
Status: valid/unmigrated Version: rel:R25-11#2c9418b2 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00413@rel:R25-11#2c9418b2
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill

función operator() [AP_SWS_SHWA_00412] Upstream: RS_SHWA_00006, RS_SHWA_00007

ara::core::Result< int > operator() (const Device &device) const noexcept override;

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

Scopeclass ara::shwa::AcceleratorSelector
Thread Safetynot thread-safe no_rollback_semantics ShwaErrorCode::k ResourceBusy The operation could not be performed because the resource is currently busy no_rollback_semantics
Exception Safetyexception safe
ErrorsShwaErrorCode::k FeatureNotSupported Used when a requested feature isn’t supported

Request a governed re-review of this record. The record is not changed immediately.

Record
AUTOSAR/AP/record/AP_SWS_SHWA_00412
Status
valid/unmigrated
Version
AUTOSAR/AP/record/AP_SWS_SHWA_00412@rel:R25-11#090d587e
Content hash
090d587e
Source
https://www.autosar.org/fileadmin/standards/R25-11/AP/AUTOSAR_AP_SWS_SafeHardwareAcceleration.pdf#nameddest=AP_SWS_SHWA_00412
Status: valid/unmigrated Version: rel:R25-11#3f4bde07 Versionshistorie & Revisions (1 transition)
Current State
valid/unmigrated
Reason
mechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record
Campaign
2026-08-13-status-backfill
Active Version
AUTOSAR/AP/record/AP_SWS_SHWA_00412@rel:R25-11#3f4bde07
Point-in-Time History:
DateActorTransitionReason / RationaleCampaign
2026-08-13toolnone → valid/unmigratedmechanically backfilled by migriere_status_backfill.py -- no per-field curation history exists yet for this record2026-08-13-status-backfill