{
  "cells": [
    {
      "cell_type": "markdown",
      "id": "175ff1e8-9d71-4396-9936-37304fa5df1c",
      "metadata": {},
      "source": [
        "---\n",
        "title: \"IBM Quantum 컴퓨트 서비스 워크로드의 최대 실행 시간\"\n",
        "description: \"IBM Quantum Compute Service 작업이 어떤 실행 모드를 사용하든 상관없이 얼마나 오래 실행될 수 있는지를 설명합니다.\"\n",
        "---\n",
        "\n",
        "<span id=\"maximum-execution-time-for-ibm-quantum-compute-service-workloads\" />\n",
        "\n",
        "# IBM Quantum 컴퓨트 서비스 워크로드의 최대 실행 시간\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "653b0c37-be57-49af-b8fe-d60e3bbdc939",
      "metadata": {
        "tags": [
          "version-info"
        ]
      },
      "source": [
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "id": "a0d6acc5-754c-4955-8cf0-5e3e12b9dd1f",
      "metadata": {},
      "source": [
        "공정성을 보장하기 위해, 각 작업이 실행될 수 있는 최대 시간은 [시스템에서](#max-QPU) 강제적으로 제한됩니다. 작업이 이 시간 제한을 초과하면 강제로 취소되고 `RuntimeJobMaxTimeoutError` 예외가 발생합니다. 또한 비용 관리를 위해 작업에 [최대 실행 시간을 설정할](#max-job) 수도 있습니다.\n",
        "\n",
        "<Admonition>\n",
        "  비용 한도에 도달하면 세션 또는 배치 처리가 즉시 종료됩니다. 해당 세션이나 배치에서 현재 실행 중인 작업은 모두 완료될 것이나, 대기 중인 작업은 취소됩니다.\n",
        "</Admonition>\n",
        "\n",
        "<span id=\"max-job\" />\n",
        "\n",
        "<span id=\"set-a-maximum-execution-time\" />\n",
        "\n",
        "## 최대 실행 시간 설정\n",
        "\n",
        "작업의 최대 실행 시간은 이 값 중 더 작은 값입니다:\n",
        "\n",
        "* 에 설정된 값은 `max_execution_time`\n",
        "* 이 서비스의 최대 타임아웃 값(3시간)\n",
        "\n",
        "이 `max_execution_time` 값은 실제 경과 시간이 아닌 *QPU 사용량* (양자 사용량만 해당)을 기준으로 산출됩니다.\n",
        "\n",
        "다음 예시와 같이 작업 옵션에서 최대 실행 시간(초 단위)을 설정하십시오.  [옵](/docs/guides/estimator-options)[ 션](/docs/guides/executor-options) 설정에 대한 자세한 내용은 [‘Estimator 옵션’](/docs/guides/sampler-options), ‘Sampler 옵션’ 또는 ‘Executor 옵션’ 가이드를 참조하십시오.\n",
        "\n",
        "```python\n",
        "from qiskit_ibm_runtime import QiskitRuntimeService\n",
        "from qiskit_ibm_runtime import EstimatorV2 as Estimator\n",
        "\n",
        "service = QiskitRuntimeService()\n",
        "backend = service.least_busy(operational=True, simulator=False)\n",
        "\n",
        "estimator = Estimator(mode=backend)\n",
        "\n",
        "estimator.options.max_execution_time = 2500\n",
        "```\n",
        "\n",
        "또한 다음과 같이 작업 메트릭을 조회하여 완료된 작업이 얼마나 많은 리소스를 사용했는지 확인할 수 있습니다:\n",
        "\n",
        "```python\n",
        "# Find QPU usage of a specific job\n",
        "print(f\"QPU usage of job {job.job_id()} was {job.metrics()['usage']['quantum_seconds']} seconds\")\n",
        "```\n",
        "\n",
        "<span id=\"max-QPU\" />\n",
        "\n",
        "<span id=\"service-enforced-maximum-execution-time\" />\n",
        "\n",
        "## 서비스에서 강제하는 최대 실행 시간\n",
        "\n",
        "이 서비스는 공정한 기기 사용을 보장하기 위해 최대 실행 시간을 3시간으로 제한합니다. 작업에 값도 지정된 `max_execution_time` 경우, 두 값 중 더 작은 값이 사용됩니다.\n",
        "\n",
        "예를 들어, ( `max_execution_time=5000` 약 83분)을 지정하면, 서비스에서 3시간 동안 실행을 허용할 수 있더라도 약 83분이 지나면 작업이 취소됩니다.\n",
        "\n",
        "<span id=\"batch-max-time\" />\n",
        "\n",
        "<span id=\"batch-maximum-execution-time\" />\n",
        "\n",
        "## 배치 최대 실행 시간\n",
        "\n",
        "배치가 시작되면 배치에 최대 생존 시간(최대 TTL) 값이 할당됩니다. 이 TTL에 도달하면 배치가 종료되고 이미 실행 중인 모든 작업이 계속 실행되며 배치에 남아 있는 대기 중인 모든 작업은 실패 상태가 됩니다.\n",
        "\n",
        "배치에는 구성할 수 없는 작업 간의 대화형 TTL(대화형 실시간 시간) 값도 있습니다. 명시적으로 배치를 닫지 않으면 대화형 TTL이 만료된 후 비활성화되며, 최대 TTL에 도달할 때까지 언제든지 다시 활성화할 수 있습니다.\n",
        "\n",
        "이러한 값을 사용하여 작업하는 방법은 [일괄 작업 실행을](/docs/guides/run-jobs-batch) 참조하십시오.\n",
        "\n",
        "<span id=\"session-max-time\" />\n",
        "\n",
        "<span id=\"session-maximum-execution-time\" />\n",
        "\n",
        "## 세션 최대 실행 시간\n",
        "\n",
        "세션이 시작되면 세션이 실행될 수 있는 시간을 결정하는 최대 TTL 값이 할당됩니다. 이 TTL에 도달하면 세션이 종료되고 이미 실행 중인 모든 작업이 계속 실행되며 세션에 남아 있는 대기 중인 모든 작업은 실패 상태가 됩니다.\n",
        "\n",
        "구성할 수 없는 대화형 TTL 값도 있습니다.  해당 기간 내에 대기 중인 세션 작업이 없으면 세션이 일시적으로 비활성화됩니다.\n",
        "\n",
        "이러한 값을 사용하여 작업하는 방법은 [세션에서 작업 실행을](/docs/guides/run-jobs-session) 참조하십시오.\n",
        "\n",
        "<span id=\"other-limitations\" />\n",
        "\n",
        "## 기타 제한\n",
        "\n",
        "Open Plan 요금제에서는 28일 이동 평균 기간 동안 QPU당 최대 10분까지 사용할 수 있습니다. [인스턴스](/instances) 페이지에서 인스턴스의 사용 현황을 확인할 수 있습니다.\n",
        "\n",
        "<span id=\"next-steps\" />\n",
        "\n",
        "## 다음 단계\n",
        "\n",
        "<Admonition type=\"tip\" title=\"권장사항\">\n",
        "  * [작업 부하 사용](/docs/guides/estimate-job-run-time) 현황.\n",
        "  * 다음 팁을 참고하세요: [작업 실행 시간을 최소화하세요](/docs/guides/minimize-time).\n",
        "</Admonition>\n",
        "\n"
      ]
    },
    {
      "cell_type": "markdown",
      "metadata": {},
      "id": "a1b8767d",
      "source": "© IBM Corp., 2017-2026"
    }
  ],
  "metadata": {
    "kernelspec": {
      "display_name": "Python 3",
      "language": "python",
      "name": "python3"
    },
    "language_info": {
      "codemirror_mode": {
        "name": "ipython",
        "version": 3
      },
      "file_extension": ".py",
      "mimetype": "text/x-python",
      "name": "python",
      "nbconvert_exporter": "python",
      "pygments_lexer": "ipython3",
      "version": "3"
    }
  },
  "nbformat": 4,
  "nbformat_minor": 4
}