)]}'
{"cyborg/conf/devices.py":[{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f071b9908f952d0dce2a360f5f82f9cff143c3a4","unresolved":true,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"gpu_group \u003d cfg.OptGroup("},{"line_number":19,"context_line":"    name\u003d\u0027gpu\u0027,"},{"line_number":20,"context_line":"    title\u003d\u0027virtual gpu options\u0027)"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"vgpu_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"5cb86238_6225d8a1","line":19,"range":{"start_line":19,"start_character":10,"end_line":19,"end_character":13},"updated":"2020-12-03 06:55:02.000000000","message":"vgpu?","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":16,"context_line":""},{"line_number":17,"context_line":""},{"line_number":18,"context_line":"gpu_group \u003d cfg.OptGroup("},{"line_number":19,"context_line":"    name\u003d\u0027gpu\u0027,"},{"line_number":20,"context_line":"    title\u003d\u0027virtual gpu options\u0027)"},{"line_number":21,"context_line":""},{"line_number":22,"context_line":"vgpu_opts \u003d ["}],"source_content_type":"text/x-python","patch_set":1,"id":"3d687650_aa5acaaa","line":19,"range":{"start_line":19,"start_character":10,"end_line":19,"end_character":13},"in_reply_to":"5cb86238_6225d8a1","updated":"2021-01-08 05:51:39.000000000","message":"what about using [gpu_devices]? IMO, this is a device level configuration group and used to differ from FPGA or other devices (at the device level). \nwhat do you think of the update in line 49~55?","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"c83b76e4245cfbb5abf11020cb75bd150fc3f998","unresolved":true,"context_lines":[{"line_number":25,"context_line":"                help\u003d\"\"\""},{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"236eb4f2_2aeaa9ce","line":28,"range":{"start_line":28,"start_character":59,"end_line":28,"end_character":66},"updated":"2020-12-04 02:52:46.000000000","message":"single","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"c83b76e4245cfbb5abf11020cb75bd150fc3f998","unresolved":true,"context_lines":[{"line_number":25,"context_line":"                help\u003d\"\"\""},{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ab2f057_0a0fe316","line":28,"range":{"start_line":28,"start_character":7,"end_line":28,"end_character":15},"updated":"2020-12-04 02:52:46.000000000","message":"supports","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                help\u003d\"\"\""},{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"4c3f8a12_93de4cbc","line":28,"range":{"start_line":28,"start_character":59,"end_line":28,"end_character":66},"in_reply_to":"236eb4f2_2aeaa9ce","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":25,"context_line":"                help\u003d\"\"\""},{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"eeaca261_96681980","line":28,"range":{"start_line":28,"start_character":7,"end_line":28,"end_character":15},"in_reply_to":"3ab2f057_0a0fe316","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"c83b76e4245cfbb5abf11020cb75bd150fc3f998","unresolved":true,"context_lines":[{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":1,"id":"5651857a_31389fed","line":29,"range":{"start_line":29,"start_character":5,"end_line":29,"end_character":9},"updated":"2020-12-04 02:52:46.000000000","message":"have","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":26,"context_line":"The vGPU types enabled in the compute node."},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Cyborg support multiple vGPU types in one host. Usually, a singel physical GPU"},{"line_number":29,"context_line":"only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support different"},{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":1,"id":"b7463e19_5a1376de","line":29,"range":{"start_line":29,"start_character":5,"end_line":29,"end_character":9},"in_reply_to":"5651857a_31389fed","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"c83b76e4245cfbb5abf11020cb75bd150fc3f998","unresolved":true,"context_lines":[{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":33,"context_line":"*vGPU type* an additional section, ``[vgpu_$(VGPU_TYPE)]``, must be added to"},{"line_number":34,"context_line":"the configuration file. Each section then **must** be configured with a"},{"line_number":35,"context_line":"single configuration option, ``device_addresses``, which should be a list of"},{"line_number":36,"context_line":"PCI addresses corresponding to the physical GPU(s) to assign to this type."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"04c7eea6_e2f109e9","line":34,"range":{"start_line":33,"start_character":35,"end_line":34,"end_character":24},"updated":"2020-12-04 02:52:46.000000000","message":"do we have some validation to ensure that all vgpu types mentioned in [device] have corresponded [vgpu_xxx] section.","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f071b9908f952d0dce2a360f5f82f9cff143c3a4","unresolved":true,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":33,"context_line":"*vGPU type* an additional section, ``[vgpu_$(VGPU_TYPE)]``, must be added to"},{"line_number":34,"context_line":"the configuration file. Each section then **must** be configured with a"},{"line_number":35,"context_line":"single configuration option, ``device_addresses``, which should be a list of"},{"line_number":36,"context_line":"PCI addresses corresponding to the physical GPU(s) to assign to this type."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"3ebb626e_edeb683e","line":34,"range":{"start_line":34,"start_character":24,"end_line":34,"end_character":53},"updated":"2020-12-03 06:55:02.000000000","message":"this part is not clearly.","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":30,"context_line":"vGPU types."},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":33,"context_line":"*vGPU type* an additional section, ``[vgpu_$(VGPU_TYPE)]``, must be added to"},{"line_number":34,"context_line":"the configuration file. Each section then **must** be configured with a"},{"line_number":35,"context_line":"single configuration option, ``device_addresses``, which should be a list of"},{"line_number":36,"context_line":"PCI addresses corresponding to the physical GPU(s) to assign to this type."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"be495d49_6fa3cece","line":34,"range":{"start_line":33,"start_character":35,"end_line":34,"end_character":24},"in_reply_to":"04c7eea6_e2f109e9","updated":"2021-01-08 05:51:39.000000000","message":"yes, will check in the driver level.\nif configuration error occurs, driver will raise an exception to remind the operator.\nPlease check in the vGPU driver patch later.","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":31,"context_line":""},{"line_number":32,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":33,"context_line":"*vGPU type* an additional section, ``[vgpu_$(VGPU_TYPE)]``, must be added to"},{"line_number":34,"context_line":"the configuration file. Each section then **must** be configured with a"},{"line_number":35,"context_line":"single configuration option, ``device_addresses``, which should be a list of"},{"line_number":36,"context_line":"PCI addresses corresponding to the physical GPU(s) to assign to this type."},{"line_number":37,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"efcd27b7_be752b85","line":34,"range":{"start_line":34,"start_character":24,"end_line":34,"end_character":53},"in_reply_to":"3ebb626e_edeb683e","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f071b9908f952d0dce2a360f5f82f9cff143c3a4","unresolved":true,"context_lines":[{"line_number":38,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":39,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":40,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":41,"context_line":"``[devices]/enabled_vgpu_types``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":44,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":1,"id":"b7d5e7ee_f9b5132e","line":41,"range":{"start_line":41,"start_character":3,"end_line":41,"end_character":10},"updated":"2020-12-03 06:55:02.000000000","message":"vgpu","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":38,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":39,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":40,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":41,"context_line":"``[devices]/enabled_vgpu_types``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":44,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":1,"id":"a9783392_48d844bb","line":41,"range":{"start_line":41,"start_character":3,"end_line":41,"end_character":10},"in_reply_to":"b7d5e7ee_f9b5132e","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f071b9908f952d0dce2a360f5f82f9cff143c3a4","unresolved":true,"context_lines":[{"line_number":41,"context_line":"``[devices]/enabled_vgpu_types``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":44,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"13a96291_21ed87b9","line":44,"range":{"start_line":44,"start_character":10,"end_line":44,"end_character":34},"updated":"2020-12-03 06:55:02.000000000","message":"Libvirt?","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":41,"context_line":"``[devices]/enabled_vgpu_types``."},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":44,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""}],"source_content_type":"text/x-python","patch_set":1,"id":"977299ce_8970d365","line":44,"range":{"start_line":44,"start_character":10,"end_line":44,"end_character":34},"in_reply_to":"13a96291_21ed87b9","updated":"2021-01-08 05:51:39.000000000","message":"This is a new defined exception.","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"c83b76e4245cfbb5abf11020cb75bd150fc3f998","unresolved":true,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    [devices]"},{"line_number":49,"context_line":"    enabled_vgpu_types \u003d nvidia-35, nvidia-36"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    [vgpu_nvidia-35]"}],"source_content_type":"text/x-python","patch_set":1,"id":"ad35d4d2_2b8b29e5","line":48,"range":{"start_line":48,"start_character":5,"end_line":48,"end_character":12},"updated":"2020-12-04 02:52:46.000000000","message":"it\u0027s better to have device here instead of a specfic section for gpu, to support more device configuration in the futher.","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"f071b9908f952d0dce2a360f5f82f9cff143c3a4","unresolved":true,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    [devices]"},{"line_number":49,"context_line":"    enabled_vgpu_types \u003d nvidia-35, nvidia-36"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    [vgpu_nvidia-35]"}],"source_content_type":"text/x-python","patch_set":1,"id":"dc85c9bb_a4174166","line":48,"range":{"start_line":48,"start_character":5,"end_line":48,"end_character":12},"updated":"2020-12-03 06:55:02.000000000","message":"vgpu","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    [devices]"},{"line_number":49,"context_line":"    enabled_vgpu_types \u003d nvidia-35, nvidia-36"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    [vgpu_nvidia-35]"}],"source_content_type":"text/x-python","patch_set":1,"id":"ee7fafbd_5c42ce96","line":48,"range":{"start_line":48,"start_character":5,"end_line":48,"end_character":12},"in_reply_to":"ad35d4d2_2b8b29e5","updated":"2021-01-08 05:51:39.000000000","message":"agree. this is a device level configuration group and used to differ from FPGA or other devices (at the device level).\nwhat about using [gpu_devices]?  \nwhat do you think of my update in line 49~55?","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":false,"context_lines":[{"line_number":45,"context_line":""},{"line_number":46,"context_line":"An example is as the following::"},{"line_number":47,"context_line":""},{"line_number":48,"context_line":"    [devices]"},{"line_number":49,"context_line":"    enabled_vgpu_types \u003d nvidia-35, nvidia-36"},{"line_number":50,"context_line":""},{"line_number":51,"context_line":"    [vgpu_nvidia-35]"}],"source_content_type":"text/x-python","patch_set":1,"id":"2deddac7_978986d8","line":48,"range":{"start_line":48,"start_character":5,"end_line":48,"end_character":12},"in_reply_to":"dc85c9bb_a4174166","updated":"2021-01-08 05:51:39.000000000","message":"Done","commit_id":"6498add78f21e839047349e1f30132e477fcc31b"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"cae13edfc0ce4d1de262811ed221e6ee5a2fba50","unresolved":true,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":35,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":36,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":37,"context_line":"the target physical GPU(s)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":40,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"}],"source_content_type":"text/x-python","patch_set":2,"id":"a90b9969_14ba339b","line":37,"range":{"start_line":36,"start_character":51,"end_line":37,"end_character":27},"updated":"2020-12-31 06:58:53.000000000","message":"the ``device_addresses`` is the addresses of pGPUs which virtualized the vGPU type.","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"0c63cd542d648c124e9459f8df36328f771f43a7","unresolved":true,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":35,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":36,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":37,"context_line":"the target physical GPU(s)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":40,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"}],"source_content_type":"text/x-python","patch_set":2,"id":"3bbf667a_b91595f2","line":37,"range":{"start_line":36,"start_character":51,"end_line":37,"end_character":27},"in_reply_to":"0db44f53_480f5206","updated":"2021-01-11 02:38:48.000000000","message":"Just like L47-L59 example, this type is nvidia-35 or nvidia-36, the target physical GPUs is 0000:84:00.0, 0000:85:00.0 and 0000:86:00.0, right? so what do you means assign nvidia-35 to 0000:84:00.0?","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"bfe25be6823e4c97cb133eba11003ff69323f8da","unresolved":true,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":35,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":36,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":37,"context_line":"the target physical GPU(s)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":40,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"}],"source_content_type":"text/x-python","patch_set":2,"id":"678ac1de_ce3222a1","line":37,"range":{"start_line":36,"start_character":51,"end_line":37,"end_character":27},"in_reply_to":"3bbf667a_b91595f2","updated":"2021-01-11 06:54:10.000000000","message":"here is where\"assign this type to\nthe target physical GPU(s)\" come from: https://github.com/openstack/nova/blob/master/nova/conf/devices.py#L32","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":33,"context_line":""},{"line_number":34,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":35,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":36,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":37,"context_line":"the target physical GPU(s)."},{"line_number":38,"context_line":""},{"line_number":39,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":40,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"}],"source_content_type":"text/x-python","patch_set":2,"id":"0db44f53_480f5206","line":37,"range":{"start_line":36,"start_character":51,"end_line":37,"end_character":27},"in_reply_to":"a90b9969_14ba339b","updated":"2021-01-08 05:51:39.000000000","message":"From my understanding, they are the same meaning.","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"cae13edfc0ce4d1de262811ed221e6ee5a2fba50","unresolved":true,"context_lines":[{"line_number":42,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":45,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"An example is as the following::"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"e1c372b9_c8d57dc9","line":45,"range":{"start_line":45,"start_character":10,"end_line":45,"end_character":34},"updated":"2020-12-31 06:58:53.000000000","message":"this doesnot have relation with Libvirt, just InvalidGPUConfig execption is ok.","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"486087aceb7fe897a9e0832ead071ab8038baa2e","unresolved":true,"context_lines":[{"line_number":42,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":43,"context_line":""},{"line_number":44,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":45,"context_line":"return an InvalidLibvirtGPUConfig exception at restart."},{"line_number":46,"context_line":""},{"line_number":47,"context_line":"An example is as the following::"},{"line_number":48,"context_line":""}],"source_content_type":"text/x-python","patch_set":2,"id":"65bba917_af30d0bf","line":45,"range":{"start_line":45,"start_character":10,"end_line":45,"end_character":34},"in_reply_to":"e1c372b9_c8d57dc9","updated":"2021-01-08 05:51:39.000000000","message":"ok,agree. done.","commit_id":"19855b030fde0b4e490678c922ff59a62e2e3802"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"fa884f65ae90e687e10f4f00af8f3cb6087b0181","unresolved":true,"context_lines":[{"line_number":40,"context_line":"The vGPU types enabled in the compute node."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Cyborg supports multiple vGPU types in one host. Usually, a single physical"},{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":7,"id":"35cc9ecd_9e91f426","line":43,"range":{"start_line":43,"start_character":32,"end_line":43,"end_character":68},"updated":"2021-02-23 09:06:05.000000000","message":"I am confused about this. does it mean that we can set multiple vgpu time at one time?","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ebf61563072278c23c3cabeaf53057befa5bf803","unresolved":true,"context_lines":[{"line_number":40,"context_line":"The vGPU types enabled in the compute node."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Cyborg supports multiple vGPU types in one host. Usually, a single physical"},{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":7,"id":"30c20478_e0e29b9e","line":43,"range":{"start_line":43,"start_character":32,"end_line":43,"end_character":68},"in_reply_to":"35cc9ecd_9e91f426","updated":"2021-02-24 03:09:44.000000000","message":"Me too, it was defined with *list type*, if there are two different pGPUs on the NODE, can we configed they are vgpu in the same list?","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"d5ed6e86c7577e0f925a78d7f02e7fc2be9dfa1e","unresolved":true,"context_lines":[{"line_number":40,"context_line":"The vGPU types enabled in the compute node."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Cyborg supports multiple vGPU types in one host. Usually, a single physical"},{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":7,"id":"827626e6_2d82ced5","line":43,"range":{"start_line":43,"start_character":32,"end_line":43,"end_character":68},"in_reply_to":"35cc9ecd_9e91f426","updated":"2021-02-24 06:40:56.000000000","message":"yes, we can.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"c5b095fb6a5da3fe896449dc9f12c5c52770f4b5","unresolved":true,"context_lines":[{"line_number":40,"context_line":"The vGPU types enabled in the compute node."},{"line_number":41,"context_line":""},{"line_number":42,"context_line":"Cyborg supports multiple vGPU types in one host. Usually, a single physical"},{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"}],"source_content_type":"text/x-python","patch_set":7,"id":"46df4160_14cef87a","line":43,"range":{"start_line":43,"start_character":32,"end_line":43,"end_character":68},"in_reply_to":"827626e6_2d82ced5","updated":"2021-02-24 14:38:17.000000000","message":"yes, wenping is right.\nplease see the example in line 50~68.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"fa884f65ae90e687e10f4f00af8f3cb6087b0181","unresolved":true,"context_lines":[{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":47,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":48,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":49,"context_line":"the target physical GPU(s)."}],"source_content_type":"text/x-python","patch_set":7,"id":"f13851bc_71a95503","line":46,"range":{"start_line":46,"start_character":34,"end_line":46,"end_character":37},"updated":"2021-02-23 09:06:05.000000000","message":"are","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"927c6b96ef1d4adc4739dd969a6ede8c5adc232a","unresolved":false,"context_lines":[{"line_number":43,"context_line":"GPU can only set one vgpu type. Some pGPUs (e.g. NVIDIA GRID K1) support"},{"line_number":44,"context_line":"multiple vGPU types."},{"line_number":45,"context_line":""},{"line_number":46,"context_line":"If more than one single vGPU type is provided, then for each"},{"line_number":47,"context_line":"*vGPU type*, you must add an additional section ``[vgpu_$(VGPU_TYPE)]`` with"},{"line_number":48,"context_line":"a single configuration option ``device_addresses`` to assign this type to"},{"line_number":49,"context_line":"the target physical GPU(s)."}],"source_content_type":"text/x-python","patch_set":7,"id":"2fd53b6c_dd346c2f","line":46,"range":{"start_line":46,"start_character":34,"end_line":46,"end_character":37},"in_reply_to":"f13851bc_71a95503","updated":"2021-02-26 08:05:22.000000000","message":"Done","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"fa884f65ae90e687e10f4f00af8f3cb6087b0181","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"81cadb99_b615d911","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"updated":"2021-02-23 09:06:05.000000000","message":"what if the first one is missing [vgpu-nvidia-xxx] section?","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"ebf61563072278c23c3cabeaf53057befa5bf803","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"09e371d3_7496a656","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"in_reply_to":"81cadb99_b615d911","updated":"2021-02-24 03:09:44.000000000","message":"@Yumeng, can you provide an example for us to understand this sentence? like Line59, paste in this comment is enough, dont need to update in this patch.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"d5ed6e86c7577e0f925a78d7f02e7fc2be9dfa1e","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"839bf153_8694e83a","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"in_reply_to":"81cadb99_b615d911","updated":"2021-02-24 06:40:56.000000000","message":"then all the GPUs should be treated as vGPU using the same first vgpu type configured.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":24872,"name":"YumengBao","email":"yumeng_bao@yahoo.com","username":"Yumeng_Bao"},"change_message_id":"c5b095fb6a5da3fe896449dc9f12c5c52770f4b5","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"92c52e30_2e871f33","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"in_reply_to":"839bf153_8694e83a","updated":"2021-02-24 14:38:17.000000000","message":"@Brin \nassume we have three PGPUs(0000:84:00.0,0000:85:00.0,0000:86:00.0) in one node.\n- if case1, then 0000:84:00.0 and 0000:85:00.0 will be configured to nvidia-35, 0000:86:00.0 will be set to nvidia-36.\n  case1:\n    [gpu_devices]\n    enabled_vgpu_types \u003d nvidia-35, nvidia-36\n\n    [vgpu_nvidia-36]\n    device_addresses \u003d 0000:86:00.0\n\n\n- if case2, then the three GPUs will be set to the same type nvidia-35.\n  case2:\n    [gpu_devices]\n    enabled_vgpu_types \u003d nvidia-35, nvidia-36\n\n    [vgpu_nvidia-35]\n    device_addresses \u003d 0000:84:00.0\n\n- if case3, then it will be the same results as case2.\n  case3:\n    [gpu_devices]\n    enabled_vgpu_types \u003d nvidia-35, nvidia-36\n\nSo to be brief, any devices (that are not specified with a target type) will be configured with the first type in enabled_vgpu_types.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"dbfe59c46e32edb640215aa79e499f93cdb80f23","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"9b5df922_606f3baa","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"in_reply_to":"92c52e30_2e871f33","updated":"2021-02-25 02:26:46.000000000","message":"thanks for your explanation. IMHO, I think it is better to indicate the vgpu type explictly. the solution you mentioned above can work, but it may cause user\u0027s confusion bacause of the implictation. Besides, if admin wanna reserve some pgpu for host usage, and cyborg treat all pgpu as a resource even they are not mentioned in config file. There might be a problem.  \n\nso my suggestion is: let admin configure all pgpus managed by cybrog in config file, those are not mentioned in config file is out of cyborg\u0027s scope.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":26458,"name":"Brin Zhang","email":"zhangbailin@inspur.com","username":"zhangbailin"},"change_message_id":"f7fc1deec41461a2f523df4e0ad1b68c43301a9b","unresolved":true,"context_lines":[{"line_number":51,"context_line":"If one or more sections are missing (meaning that a specific type is not wanted"},{"line_number":52,"context_line":"to use for at least one physical GPU) or if no device addresses are provided,"},{"line_number":53,"context_line":"then cyborg will only use the first type that was provided by"},{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."}],"source_content_type":"text/x-python","patch_set":7,"id":"d3d0f965_6403d018","line":54,"range":{"start_line":54,"start_character":0,"end_line":54,"end_character":37},"in_reply_to":"9b5df922_606f3baa","updated":"2021-02-27 01:32:06.000000000","message":"\u003e thanks for your explanation. IMHO, I think it is better to indicate the vgpu type explictly. the solution you mentioned above can work, but it may cause user\u0027s confusion bacause of the implictation. Besides, if admin wanna reserve some pgpu for host usage, and cyborg treat all pgpu as a resource even they are not mentioned in config file. There might be a problem.  \n\u003e \n\nagree, it\u0027s a problem, and need to be improve in the series of patches.\n\n\u003e so my suggestion is: let admin configure all pgpus managed by cybrog in config file, those are not mentioned in config file is out of cyborg\u0027s scope.","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":25738,"name":"Xinran WANG","email":"xin-ran.wang@intel.com","username":"Xinran"},"change_message_id":"fa884f65ae90e687e10f4f00af8f3cb6087b0181","unresolved":true,"context_lines":[{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"An example is as the following::"},{"line_number":60,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"267e5488_fa586a69","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":48},"updated":"2021-02-23 09:06:05.000000000","message":"+1","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"},{"author":{"_account_id":31412,"name":"Wenping Song","email":"songwenping@inspur.com","username":"songwenping"},"change_message_id":"d5ed6e86c7577e0f925a78d7f02e7fc2be9dfa1e","unresolved":false,"context_lines":[{"line_number":54,"context_line":"``[gpu_devices]/enabled_vgpu_types``."},{"line_number":55,"context_line":""},{"line_number":56,"context_line":"If the same PCI address is provided for two different types, cyborg-agent will"},{"line_number":57,"context_line":"return an InvalidGPUConfig exception at restart."},{"line_number":58,"context_line":""},{"line_number":59,"context_line":"An example is as the following::"},{"line_number":60,"context_line":""}],"source_content_type":"text/x-python","patch_set":7,"id":"db2ab930_8bb9fcad","line":57,"range":{"start_line":57,"start_character":0,"end_line":57,"end_character":48},"in_reply_to":"267e5488_fa586a69","updated":"2021-02-24 06:40:56.000000000","message":"Ack","commit_id":"5247508e1ce1a7cd0b10339c2b336591c0704af1"}],"releasenotes/notes/configure-multiple-vgpu-types-a60d09dfb5b7be4b.yaml":[{"author":{"_account_id":28748,"name":"chenker","email":"chen.ke14@zte.com.cn","username":"chenke"},"change_message_id":"903c5d11eed86a66d2d7e4080dc7281f873aeaa1","unresolved":true,"context_lines":[{"line_number":2,"context_line":"features:"},{"line_number":3,"context_line":"  - |"},{"line_number":4,"context_line":"    The cyborg Nvidia GPU driver now supports defining different virtual GPU"},{"line_number":5,"context_line":"    types for each physical GPU. See the ``[devices]/enabled_vgpu_types``"},{"line_number":6,"context_line":"    configuration option for knowing how to do it. Please refer to"},{"line_number":7,"context_line":"    https://specs.openstack.org/openstack/cyborg-specs/specs/wallaby/approved/vgpu-driver-proposal.html"},{"line_number":8,"context_line":"    for further documentation."}],"source_content_type":"text/x-yaml","patch_set":6,"id":"b2b12aaa_dad7d6a6","line":5,"range":{"start_line":5,"start_character":44,"end_line":5,"end_character":52},"updated":"2021-01-16 03:27:50.000000000","message":"gpu_devices","commit_id":"09cc9226d4607515f3a28cd470817939a6488c69"}]}
