Skip to main content

Diagnosis and log reference

This section explains how to identify the cause and take first-line action when the Arm AI Model Optimizer SDK (np) behaves abnormally. For any issues you cannot resolve, follow the Reporting an issue procedure.

Diagnosis flow​

When you notice abnormal behavior, diagnose in the following order. If a step does not resolve the issue, move to the next one. If you cannot fix it yourself, report it to support.

Symptom checklist​

SymptomLikely causeFirst-line actionReference
Pipeline stops midway (SIGKILL / abnormal exit)Out of memory (system RAM or GPU)Lower batch_size in run.detail.yaml (detail.batch_size, applies to AQ, GQ, and evaluate), then np run --retryrun.detail.yaml
Run fails when the host disk is fullNo free space in the execution environmentFree up disk space, then np run --retry (NP-SIO-500)Error Codes
GPU unavailable (No CUDA GPUs are available, NP-SSM-503)No GPU worker capacity on the server sideRetry. If the issue persists, ask your operator to check GPU schedulingError Codes
Exits with a [NP-S**-***] error codeVaries by codeLook up the error code referenceError Codes
API connection failureServer-side or network issueRespond according to the error code (NP-SAP-xxx)Error Codes
Accuracy noticeably lower than expectedOptimization configuration or calibrationReview the run.yaml config and calibration datasetrun.yaml
MLIA profiling missing latency and memory columnsBackend is xnnpack: MLIA only produces MACs and parameters thereExpected. Full latency and memory from MLIA is available only when targeting ethos_uProfiler
np run --wait stopped printing after Ctrl+C, but the run is still listed as activeCtrl+C only detaches the CLI; it does not cancel the runExpected. Check with np status. Use np cancel if you actually want to stop itJob States

Job states​

Because np run submits work to the backend for asynchronous execution, a job moves through these states:

StateMeaning
pendingQueued, waiting for a worker
runningExecuting on a GPU worker
success / failedFinished
canceledCancellation requested with np cancel (a running job finishes its current step before cancellation takes effect)

Exit codes​

When the CLI exits with a non-zero status, the exit code narrows down the failure category (useful for scripting and CI branching).

Exit codeMeaning
0Success
1General error (including backend errors; see the message for details)
2Invalid arguments or usage
3Configuration or environment error (for example, missing environment variable)
4Backend connection failure or timeout
5Validation failed (np validate itself reports invalid)
130Interrupted by user (Ctrl+C)

Common issues​

See also Client error codes.

SymptomCauseFix
Environment variable NP_CLIENT_API_URL ... is not setConnection info not configuredSet export NP_CLIENT_API_URL=... and retry
Not authenticatedNot logged in, or session expired and refresh failedRun np auth login <token>. To obtain or replace a token, see Manage access tokens
Failed to connect to the backendNetwork issue or wrong URLCheck connectivity with np health ready. Verify the URL
The backend request timed outBackend is slow to respondRetry shortly. Contact your administrator if the issue persists
Workspace not initializedCommand run outside an initialized workspacecd into the workspace root, then run np workspace init
Workspace already existsRe-initializing an already-initialized directoryUse a different directory, or keep using the existing workspace
Invalid workspace configLocal configuration file corruptedDelete ~/.config/np/config.json and re-run np workspace init
No backend project ref registered for this pathCommand run outside a project folder, or the ref was lostRun from the folder created by np projects create, or pass --project <ref_id>
Unsupported device combinationUnsupported device/runtime/backend combinationCheck supported combinations with np devices ls
not a pre-approved model card on model registrationModel isn't on the allow-listCheck allowed model cards with np models register --help
Experiment/project name format error (422)Name violates naming rulesUse letters, numbers, hyphens, underscores; 1–50 chars
Timeout during np evaluate --waitEvaluation is still running on the serverCheck progress with np status, or re-run np evaluate ... --wait
No results from np analyze sensitivity (404)Sensitivity cache not yet generatedRun np run or np evaluate with the relevant metric enabled first

If you still cannot resolve your issue, contact support for Arm AI Model Optimizer with the console output.

Client error codes (NP-C{module}-{status})​

Errors surfaced directly by the np thin client use the form NP-C{module}-{HTTP-status-like number}. This is distinct from the pipeline-internal NP-S{module}-{status} codes below, which originate from the backend's own processing of a submitted job.

CodeMeaningAction
NP-CAP-400/404/409/422Invalid request, resource not found or conflict, validation failedRe-check the command arguments and target ID
NP-CAP-401/403Authentication required or permission deniedRun np auth login <credential>, or contact your administrator
NP-CAP-500/502Backend internal errorContact your administrator if the issue persists
NP-CAP-503Failed to connect to the backendCheck NP_CLIENT_API_URL and network connectivity
NP-CAP-504Backend request timed outRetry shortly
NP-CVA-422Unsupported device combinationCheck with np devices ls
NP-CMD-400Model not on the allow-listSee np models register --help
NP-CWS-404/409/422Workspace not initialized, already exists, configuration corruptedRun np workspace init, use a different directory, or delete ~/.config/np/config.json and re-initialize
NP-CPR-404/409/422Project ref missing, already exists, invalid nameRun from the project folder, or check naming rules
NP-CXP-409/422Experiment state conflict or invalid nameUse np run --retry, or check naming rules
NP-CRP-404 / NP-CST-404 / NP-CCL-404No ref registered for report, status, or cancel targetRun from the project or experiment folder, or pass --experiment/--project
NP-CEV-404/422Evaluation target missing or invalid metric argumentCheck the target ID. Use -m NAME[:key=value] format
NP-CEV-504Timed out waiting on evaluation (still running server-side)Check with np status
NP-CEX-404 / NP-CPF-404No ref for export or profile targetRun from the experiment folder, or pass --experiment
NP-CAN-404No sensitivity cache foundRun np run or np evaluate with the metric enabled first
NP-CCF-500Client configuration errorCheck the required environment variable is set
NP-CX-999Unexpected internal errorContact support with logs if it recurs

Pipeline error code reference​

Code format​

Error codes use the form NP-S<module>-<status>: S is the SDK service, the next two letters identify the module, and the number mirrors an HTTP status (4xx = input or client issue, 5xx = server or runtime issue).

e.g. NP-SWS-404 = SDK, then WS (Workspace), then 404 (Not found)

PrefixModulePrefixModule
SAPAPI clientSRNRun (pipeline)
SCFConfigurationSSMScenario Manager
SDSDatasetSVAValidator
SIOFile I/OSWSWorkspace
SMLModelSXPExperiment
SPRProjectXMeta (uncategorized)
SRMResult Manager

On error, the CLI prints the code together with a cause and action hint. The tables below are a summary. The most accurate guidance is the CLI output message.

Who resolves it​

ResponderHandles
You (SDK user)Configuration, input, and context errors: fix the command and re-run
Your system administratorHost-level issues on the on-premise machine: server, network, disk, GPU, and credentials
Support for Arm AI Model OptimizerSoftware internals and unexpected failures: report the issue

Errors you can fix yourself​

Configuration, input, and context errors, usually resolved by correcting the command and re-running.

CodeMeaningAction
NP-SCF-400Invalid YAML syntaxCheck the YAML syntax of run.yaml
NP-SCF-422Invalid configurationValidate run.yaml against the schema. Use --steps with go,gq or aq,go,gq, and check required fields (-C and -E)
NP-SCF-500Configuration load failedVerify run.yaml exists and is valid
NP-SDS-404Dataset not foundRun np datasets ls to see registered datasets
NP-SDS-409Dataset selection conflictResolve name duplication or ambiguity
NP-SDS-422Invalid datasetUse a dataset matching the task, and check the format
NP-SML-404Model not foundRun np models ls to check the ref_id
NP-SML-409Ambiguous model selectionSpecify the type with --as model|job|experiment
NP-SML-422Unsupported model formatOnly .pt2 models are supported, so re-create the model
NP-SPR-404Not inside a projectMove into a project directory or np projects create
NP-SPR-409Project state conflictRename, or run at the project root
NP-SPR-422Invalid project inputCheck naming rules (only alphanumeric characters, -, and _, 3–50 characters, must start with a letter or number)
NP-SWS-404Workspace is not found or is outside workspacenp workspace init or move into the workspace directory
NP-SWS-409Workspace state conflictCheck for existing workspace or run at root
NP-SWS-422Invalid workspace configurationCheck workspace configuration
NP-SXP-404Experiment resource not foundRun np experiments ls, move into an experiment directory
NP-SXP-409Experiment state conflictResume with np run --retry or create a new experiment
NP-SXP-422Invalid experiment nameCheck naming rules
NP-SXP-429Experiment limit exceededClean up unneeded experiments
NP-SVA-422Invalid validation inputCheck supported device, runtime, and quantization scheme combinations
NP-SSM-400Scenario YAML parse errorCheck the scenario YAML syntax
NP-SSM-404Scenario resource not foundCheck the scenario YAML and detail paths
NP-SSM-409Duplicate step combinationRemove the duplicate step combination
NP-SSM-422Invalid scenarioCheck the schema, step type, hardware, and metric
NP-SIO-403Permission deniedCheck directory permissions
NP-SIO-404Path not foundCheck the workspace structure and file path
NP-SIO-409File already existsClean up the target path
NP-SRN-998Pipeline canceledYou (or someone with access) ran np cancel on this experiment. Re-run when ready (this is not an error)

Errors for your system administrator​

Host-level issues on the on-premise machine. If the administrator cannot resolve them, report to support.

CodeMeaningFirst-line action
NP-SAP-401Authentication requiredThe SDK could not authenticate to the backend: check the credentials set at install (.env or license-gate)
NP-SAP-404Remote resource not foundCheck storage and server status
NP-SAP-502Backend or API errorCheck the API server status
NP-SAP-503API connection failedVerify the API server is running and NP_ENTERPRISE_API_URL is correct
NP-SAP-504API timeoutRetry, then check whether the server is responsive
NP-SIO-500File system errorCheck disk space and path permissions on the host
NP-SSM-503GPU unavailableA server-side capacity issue. Report it to your operator with the error code and the time of occurrence

Errors to report to support for Arm AI Model Optimizer​

Software internals and unexpected failures. Report the issue with the logs attached.

CodeMeaningFirst-line action
NP-SVA-404Validation resource or device not foundRun np devices ls to see the devices configured at delivery. If the one you need is missing, report it
NP-SRM-500Catalog load failedRe-run. If the issue persists, report
NP-SRN-500Pipeline stage failed (optimize, profile, evaluate, export, and so on)Check the logs for the underlying cause (often a fixable configuration or model issue). If none is found or the issue repeats, report
NP-SSM-500Scenario internal errorCheck disk and permissions, then report
NP-X-999Unhandled exceptionReport (attach logs)

Log reference​

Log locations​

  • Console output: errors and hints are printed during execution as [NP-S**-***] <message>.
  • Log files: each run is logged automatically to the logs/ folder of the experiment. You do not need to capture the console manually.
<workspace>/<project>/<experiment>/
├── run.yaml # pipeline configuration
├── run.detail.yaml # fine-grained overrides (optional)
├── meta.json
├── report.json # raw np report output
├── logs/ # execution logs (written automatically)
└── NN_<step>/ # e.g. 01_graph_optimize, 02_graph_quantize
├── job.json
└── artifacts/

Log levels​

Each log line is tagged with a level:

LevelMeaning
DEBUGVerbose diagnostic detail
INFONormal progress
WARNAttention needed, but the run continues
ERRORA failure occurred
DONEA step or the pipeline finished successfully

Collecting logs to report​

When reporting an issue, attach the files that already exist in the affected experiment directory:

  • the logs/ folder of the experiment
  • run.yaml (and run.detail.yaml if used)
  • the meta.json, report.json, and job.json for the failed step

Next steps​

If you cannot diagnose and resolve issues yourself, follow the procedure in Reporting an Issue.