-
See Also
- RemoteBatchSubmit
- RemoteBatchMapSubmit
- RemoteProviderSettings
- RemoteGeoZone
-
- Remote Batch Computation Providers
- WolframBatch
- Related Guides
-
-
See Also
- RemoteBatchSubmit
- RemoteBatchMapSubmit
- RemoteProviderSettings
- RemoteGeoZone
-
- Remote Batch Computation Providers
- WolframBatch
- Related Guides
-
See Also
is an option for RemoteBatchSubmit and RemoteBatchMapSubmit that specifies a machine class to use with the "WolframBatch" provider.
RemoteMachineClass
is an option for RemoteBatchSubmit and RemoteBatchMapSubmit that specifies a machine class to use with the "WolframBatch" provider.
Details
- RemoteMachineClass specifies what hardware to run the remote job on. Supported classes include:
-
"Basic1x8" basic machine class with 1 CPU core and 8 GB of memory "Basic2x8" 2 CPU cores and 8 GB of memory "Basic4x16" 4 CPU cores and 16 GB of memory "Memory8x64" memory-optimized class with 8 CPU cores and 64 GB of memory "Memory16x128" 16 CPU cores and 128 GB of memory "Memory192x1536" 192 CPU cores and 1536 GB of memory "Compute64x128" compute-optimized class with 64 CPU cores and 128 GB of memory "Compute192x384" 192 CPU cores and 384 GB of memory "GPU1xL40S" 1 NVIDIA L40S GPU with 44 GiB of GPU memory "GPU4xL4" 4 NVIDIA L4 GPUs with 89 GiB of total GPU memory - The default value for RemoteMachineClass is "Basic1x8".
- The list of supported machine classes is subject to change. For an up-to-date listing with corresponding pricing information, see https://www.wolfram.com/compute-services.
- When using the "WolframBatch" provider, RemoteMachineClass class is equivalent to setting RemoteProviderSettings <|"RemoteMachineClass" class|>.
Examples
open all close allBasic Examples (1)
Scope (3)
Train a neural network using a single GPU:
job = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> "GPU"], RemoteMachineClass -> "GPU1xL40S"]Training progress is reported in the console log:
StringCases[job["JobLogString"], "Starting training" ~~ __]//FirstUse the resulting net to classify a difficult digit:
job["EvaluationResult"]%[[image], "TopProbabilities"]Train a neural network using multiple GPUs:
job = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> {"GPU", All}, BatchSize -> 512], RemoteMachineClass -> "GPU4xL4"]Perform batch inference using a GPU:
job = RemoteBatchSubmit[Counts[NetModel["Wolfram ImageIdentify Net V1"][Flatten@Table[RandomImage[max], {max, .1, 10, .1}, 10], TargetDevice -> "GPU"]], RemoteMachineClass -> "GPU1xL40S"]job["EvaluationResult"]Possible Issues (3)
Neural network operations use the CPU by default, even if a job’s machine class has GPU hardware available:
job1 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST"], RemoteMachineClass -> "GPU1xL40S"]StringCases[job1["JobLog"], "Device:" ~~ Except["
"]..]//FirstSpecify the TargetDevice option in order to use a GPU for training or inference:
job2 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> "GPU"], RemoteMachineClass -> "GPU1xL40S"]StringCases[job2["JobLog"], "Device:" ~~ Except["
"]..]//FirstNetTrain[…,TargetDevice"GPU"] uses a single GPU, regardless of the number of GPUs available to the job:
job1 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> "GPU", BatchSize -> 128], RemoteMachineClass -> "GPU4xL4"]StringCases[job1["JobLog"], "Device:" ~~ Except["
"]..]//FirstSpecify TargetDevice{"GPU",All} in order to use all available GPUs for training:
job2 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> {"GPU", All}, BatchSize -> 128], RemoteMachineClass -> "GPU4xL4"]StringCases[job2["JobLog"], "Device:" ~~ Except["
"]..]//FirstMulti-GPU inference is not supported:
job3 = With[{net = job2["EvaluationResult"]}, RemoteBatchSubmit[net[Table[RandomImage[1], 50], TargetDevice -> {"GPU", All}], RemoteMachineClass -> "GPU4xL4"]]job3["EvaluationMessagesText"]Multi-GPU training fails if a batch size is not specified:
job1 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> {"GPU", All}], RemoteMachineClass -> "GPU4xL4"]{job1["EvaluationResult"], job1["EvaluationMessagesText"]}Specify the BatchSize option when performing training on multiple GPUs:
job2 = RemoteBatchSubmit[NetTrain[NetModel["LeNet"], "MNIST", TargetDevice -> {"GPU", All}, BatchSize -> 128], RemoteMachineClass -> "GPU4xL4"]job2["EvaluationResult"]See Also
RemoteBatchSubmit RemoteBatchMapSubmit RemoteProviderSettings RemoteGeoZone
Remote Batch Computation Providers: WolframBatch
Related Guides
History
Text
Wolfram Research (2025), RemoteMachineClass, Wolfram Language function, https://reference.wolfram.com/language/ref/RemoteMachineClass.html.
CMS
Wolfram Language. 2025. "RemoteMachineClass." Wolfram Language & System Documentation Center. Wolfram Research. https://reference.wolfram.com/language/ref/RemoteMachineClass.html.
APA
Wolfram Language. (2025). RemoteMachineClass. Wolfram Language & System Documentation Center. Retrieved from https://reference.wolfram.com/language/ref/RemoteMachineClass.html
BibTeX
@misc{reference.wolfram_2026_remotemachineclass, author="Wolfram Research", title="{RemoteMachineClass}", year="2025", howpublished="\url{https://reference.wolfram.com/language/ref/RemoteMachineClass.html}", note=[Accessed: 12-June-2026]}
BibLaTeX
@online{reference.wolfram_2026_remotemachineclass, organization={Wolfram Research}, title={RemoteMachineClass}, year={2025}, url={https://reference.wolfram.com/language/ref/RemoteMachineClass.html}, note=[Accessed: 12-June-2026]}