diff --git a/_topic_map.yml b/_topic_map.yml index 5691e866a331..9e75ab42a5b6 100644 --- a/_topic_map.yml +++ b/_topic_map.yml @@ -1356,7 +1356,7 @@ Topics: - Name: Using sample applications File: using-sample-applications - Name: Creating instances of services managed by Operators - File: creating-instances-of-services-managed-by-operators + File: creating-instances-of-services-managed-by-operators - Name: Debugging applications in odo File: debugging-applications-in-odo - Name: Managing environment variables in odo @@ -1701,11 +1701,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,13 +1747,18 @@ Topics: # Metering - Name: Using metering with OpenShift Serverless File: serverless-metering -#--- -#Name: Kubernetes Cluster Federation -#Dir: kubefed -#Distros: openshift-enterprise -#Topics: -### Overview -#- Name: Understanding Kubernetes Cluster Federation -# File: understanding-kubefed -#- Name: Installing OpenShift KubeFed -# File: installing-kubefed + # 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 000000000000..8d7ca7de713f --- /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 000000000000..5e67573196d8 --- /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 000000000000..464b823aca16 --- /dev/null +++ b/serverless/integrations/modules @@ -0,0 +1 @@ +../modules \ No newline at end of file