DEENESPTFRRUARHIKOZHNL

classe 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 ainda não 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

Guia do utilizadorGERADO POR IA

Avalia e seleciona dispositivos aceleradores de hardware com base em uma estratégia de seletor para aplicações adaptativas.
GERADO POR IA não revisado Modelo: gemini-3.8-flash-medium · Esforço: medium · Temperatura: não controlável · Prompt: ffcb3b3d577e Procedência Perguntas em aberto (3)
traduzido do guia alemãogemini-3.8-flash-low · 2026-10-13 · Original em alemão

Avalia e seleciona dispositivos aceleradores de hardware com base em uma estratégia de seletor para aplicações adaptativas.

A classe ara::shwa::AcceleratorSelector serve, no módulo de aceleração de hardware, para a avaliação e seleção de dispositivos aceleradores adequados de acordo com uma estratégia de seletor ([AP_SWS_SHWA_00413]). Por meio de SelectDevice() é possível selecionar diretamente um Device adequado, enquanto operator() viabiliza uma avaliação numérica individual de dispositivos individuais ([AP_SWS_SHWA_00412]). Como ambas as operações estão especificadas como não thread-safe, o uso concorrente requer sincronização externa. Possíveis erros, como recursos ocupados ou funções não suportadas, são reportados sem rollback por meio de ara::core::Result.

Contexto

A classe ara::shwa::AcceleratorSelector atua no módulo shwa (Hardware Acceleration) da AUTOSAR Adaptive Platform como seletor especializado para dispositivos aceleradores de hardware. De acordo com a sintaxe da classe, ela deriva publicamente da interface base DeviceSelector (class AcceleratorSelector : public DeviceSelector). Sua responsabilidade central consiste em avaliar dispositivos aceleradores físicos ou lógicos (Device) segundo uma estratégia de seletor definida ou selecionar um dispositivo adequado ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]).

Entre os parceiros de interação estão a lógica de aplicação de nível superior, que solicita recursos de aceleração para tarefas de computação intensiva, a classe base herdada DeviceSelector bem como as instâncias de Device analisadas ou retornadas pelo seletor. Os próprios critérios de seleção estão encapsulados na implementação concreta da estratégia de seletor ([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: Enquadramento de AcceleratorSelector na interação com aplicação, DeviceSelector e Device. Fontes: [AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]

Ciclo de vida

A instanciação de AcceleratorSelector deve ocorrer tipicamente de forma específica da aplicação ou por meio de mecanismos de fábrica correspondentes antes da primeira solicitação de dispositivo. Pergunta Q-933e42753f63687c (aberta) A destruição ocorre assim que a lógica de seleção não for mais necessária para o respectivo componente de aplicação; a especificação não prescreve estados intermediários ou fases de ciclo de vida específicos.

Quanto à concorrência, ambas as operações disponibilizadas — SelectDevice() e operator() — estão expressamente especificadas como não thread-safe ("not thread-safe") ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Embora ambos os métodos estejam declarados como const, chamadas concorrentes por meio da mesma instância ou para os mesmos recursos de hardware subjacentes devem ser sincronizadas externamente pelo chamador.

Caminho de utilização

A interação com AcceleratorSelector ocorre por meio de dois caminhos de uso alternativos: a seleção automática direta e a avaliação individual de candidatos. Por meio do método virtual SelectDevice(), a aplicação solicita diretamente a seleção de um dispositivo adequado de acordo com a estratégia implementada ([AP_SWS_SHWA_00413]). Em caso de sucesso, a chamada retorna uma instância de Device encapsulada em um ara::core::Result.

Alternativamente, o operador de chamada sobrecarregado operator() permite a avaliação passo a passo de dispositivos conhecidos individuais ([AP_SWS_SHWA_00412]). O valor inteiro retornado por operator() (int) representa provavelmente uma pontuação relativa de adequação, com base na qual a própria aplicação pode realizar uma classificação ou filtragem. Interpretação: SelectDevice() encapsula a estratégia completa de seleção de forma autônoma, enquanto operator() permite comparações detalhadas de dispositivos individuais. Pergunta Q-e2de44ef0c9e936d (aberta)

Avaliação e seleção de dispositivos aceleradoresAplicaçãoAcceleratorSelectorUse Case: KandidatenbewertungloopPara cada dispositivo candidatooperator()(device)ara::core::Result<int> (Score)Use Case: Seleção direta de dispositivoSelectDevice()ara::core::Result<Device>

Diagrama de sequência: Fluxo de chamada na avaliação e seleção de dispositivos. Fontes: [AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]

Cenários de erro

Ambas as operações estão declaradas como noexcept e garantem Exception Safety ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Erros são transportados exclusivamente por meio do tipo de retorno ara::core::Result. Estão especificados os seguintes códigos de erro da faixa ShwaErrorCode:

Para ambas as funções está estabelecido que não existe semântica de rollback (no_rollback_semantics) ([AP_SWS_SHWA_00412], [AP_SWS_SHWA_00413]). Caso ocorra um erro, um estado anterior do sistema ou de hardware não é restaurado automaticamente. Os chamadores devem verificar o código de erro do objeto Result e, se necessário, iniciar novas tentativas ou caminhos de seleção alternativos.

Este guia foi gerado por uma IA com base na especificação para AUTOSAR Adaptive R25-11.

Métodos

SelectDevice função

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

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

Operadores

operator() função

Bewertet beziehungsweise selektiert ein Device entsprechend der Selektor-Strategie.

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

Detalhes

função 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#53adf36c
Content hash
53adf36c
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

função 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#cd5d03b7
Content hash
cd5d03b7
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