diff --git a/_topic_map.yml b/_topic_map.yml index 234aa6c4b6..43083aebce 100644 --- a/_topic_map.yml +++ b/_topic_map.yml @@ -1704,11 +1704,6 @@ Topics: # Apps - Name: Creating and managing serverless applications File: serving-creating-managing-apps -# HA -- Name: High availability on OpenShift Serverless - File: serverless-HA -- Name: Tracing requests - File: serverless-tracing # Knative CLI - Name: Knative CLI Dir: knative_cli @@ -1752,6 +1747,18 @@ Topics: # Channels - Name: Using channels File: serverless-channels +# HA +- Name: High availability on OpenShift Serverless + File: serverless-HA +# Tracing +- Name: Tracing requests + File: serverless-tracing # Metering - Name: Using metering with OpenShift Serverless File: serverless-metering +# Integrations +# - Name: Integrations +# Dir: integrations +# Topics: +# - Name: Using NVIDIA GPU resources with serverless applications +# File: gpu-resources diff --git a/serverless/integrations/gpu-resources.adoc b/serverless/integrations/gpu-resources.adoc new file mode 100644 index 0000000000..8d7ca7de71 --- /dev/null +++ b/serverless/integrations/gpu-resources.adoc @@ -0,0 +1,39 @@ +include::modules/serverless-document-attributes.adoc[] +[id="gpu-resources"] += Using NVIDIA GPU resources with serverless applications +:context: gpu-resources +include::modules/common-attributes.adoc[] + +toc::[] + +NVIDIA supports experimental use of GPU resources on {product-title}. +See link:https://docs.nvidia.com/datacenter/kubernetes/openshift-on-gpu-install-guide/index.html[{product-title} on NVIDIA GPU accelerated clusters] for more information about setting up GPU resources on {product-title}. + +After GPU resources are enabled for your {product-title} cluster, you can specify GPU requirements for a Knative service using the `kn` CLI. + +.Procedure + +You can specify a GPU resource requirement when you create a Knative service using `kn`. + +. Create a service. +. Set the GPU resource requirement limit to `1` by using `nvidia.com/gpu=1`: ++ +---- +$ kn service create hello --image docker.io/knativesamples/hellocuda-go --limit nvidia.com/gpu=1 +---- ++ +A GPU resource requirement limit of `1` means that the service has 1 GPU resource dedicated. +Services do not share GPU resources. Any other services that require GPU resources must wait until the GPU resource is no longer in use. ++ +A limit of 1 GPU also means that applications exceeding usage of 1 GPU resource are restricted. +If a service requests more than 1 GPU resource, it is deployed on a node where the GPU resource requirements can be met. + +.Updating GPU requirements for a Knative service using `kn` + +* Update the service. Change the GPU resource requirement limit to `3` by using `nvidia.com/gpu=3`: +---- +$ kn service update hello --limit nvidia.com/gpu=3 +---- + +== Additional resources +* For more information about limits, see xref:../../applications/quotas/quotas-setting-per-project.adoc[Setting resource quotas for extended resources]. diff --git a/serverless/integrations/images b/serverless/integrations/images new file mode 120000 index 0000000000..5e67573196 --- /dev/null +++ b/serverless/integrations/images @@ -0,0 +1 @@ +../images \ No newline at end of file diff --git a/serverless/integrations/modules b/serverless/integrations/modules new file mode 120000 index 0000000000..464b823aca --- /dev/null +++ b/serverless/integrations/modules @@ -0,0 +1 @@ +../modules \ No newline at end of file