)]}'
{"/COMMIT_MSG":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"5db7e825adf36f58cc4d051ec0b7aa4f9a6b80ed","unresolved":true,"context_lines":[{"line_number":23,"context_line":"candidates. For 8 RPs and 4 groups that is 4096 candidates."},{"line_number":24,"context_line":"For 8 RPs and 8 groups that ~16M candidates."},{"line_number":25,"context_line":""},{"line_number":26,"context_line":"[1] https://github.com/openstack/placement/blob/723da65faf66cc9b8d02f3756387dc58437e62af/placement/objects/allocation_candidate.py#L371"},{"line_number":27,"context_line":""},{"line_number":28,"context_line":"Change-Id: If6a5b28e8b5680c716521db0255accf8867a13bb"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":4,"id":"3fdd8eff_f5096fdf","line":26,"updated":"2023-06-15 21:15:14.000000000","message":"One idea from John is that we can try to remove the permutation generation from placement and instead return the input for that permutation generation to nova and let nova use it extra infromation (like numa) to generate the valid candidates only.","commit_id":"9381f79470d9bb682edfb8ce083fa273f603edcc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"01fc768c12a2d780f1d6bb2fdaa00edb27ed0747","unresolved":true,"context_lines":[{"line_number":27,"context_line":"* mdev GPUs"},{"line_number":28,"context_line":"* PCI passthrough with PCI in Placement features enabled"},{"line_number":29,"context_line":""},{"line_number":30,"context_line":"[1] https://github.com/openstack/placement/blob/723da65faf66cc9b8d02f3756387dc58437e62af/placement/objects/allocation_candidate.py#L371"},{"line_number":31,"context_line":""},{"line_number":32,"context_line":"Change-Id: If6a5b28e8b5680c716521db0255accf8867a13bb"}],"source_content_type":"text/x-gerrit-commit-message","patch_set":6,"id":"86a21bde_8157dc8e","line":30,"updated":"2024-11-27 17:24:04.000000000","message":"Actually this is a very misleading link from me the real number explosion happens at a later step, at https://github.com/openstack/placement/blob/723da65faf66cc9b8d02f3756387dc58437e62af/placement/objects/allocation_candidate.py#L734-L758","commit_id":"cdc3b4b143b28bf96601728921f817f84c4963e5"}],"/PATCHSET_LEVEL":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"17207e9deb4beeb7af21ac490ae5b2a2c3d4da2f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":3,"id":"8a1e91de_d8aaad05","updated":"2022-10-27 08:58:24.000000000","message":"This is just a demonstrator.","commit_id":"215db8f720c98dfe75708707f9791bd388086a85"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"75665b86b87219fbbf413421fb2b63af0fb6b246","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":4,"id":"945c787b_b99ea352","updated":"2023-01-20 15:18:40.000000000","message":"resolved merge conflict","commit_id":"9381f79470d9bb682edfb8ce083fa273f603edcc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07d280c76b17c30308a73ac0c8b18f219f835ab6","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"73735ce6_aca5c228","updated":"2024-11-26 12:34:30.000000000","message":"Rebased and commented with the placement a_c query results for each test cases","commit_id":"2d963050e999bfbf8bdf0440acc8fd301193475f"}],"nova/tests/functional/libvirt/test_pci_in_placement.py":[{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07d280c76b17c30308a73ac0c8b18f219f835ab6","unresolved":true,"context_lines":[{"line_number":1997,"context_line":"        self.assert_no_pci_healing(\"compute1\")"},{"line_number":1998,"context_line":""},{"line_number":1999,"context_line":"    def test_combinatorial_explosion_one_dev_per_rp(self):"},{"line_number":2000,"context_line":"        # with a single host this will result in 1680 candidates"},{"line_number":2001,"context_line":"        available_devs \u003d 8"},{"line_number":2002,"context_line":"        requested_devs \u003d 4"},{"line_number":2003,"context_line":"        pci_info \u003d fakelibvirt.HostPCIDevicesInfo("}],"source_content_type":"text/x-python","patch_set":4,"id":"1d03ed1d_e2bd9959","line":2000,"updated":"2024-11-26 12:34:30.000000000","message":"```\n2024-11-26 13:28:57,353 DEBUG [placement.objects.allocation_candidate] Merging candidates yields 1680 allocation requests and 9 provider summaries\n2024-11-26 13:28:57,353 DEBUG [placement.objects.research_context] Limiting results yields 1000 allocation requests and 9 provider summaries\n2024-11-26 13:28:57,370 INFO [placement.requestlog] 127.0.0.1 \"GET /placement/allocation_candidates?group_policy\u003dnone\u0026limit\u003d1000\u0026required69596af3-2230-4818-90a8-16dfffa67dc7-0\u003dCUSTOM_BLUE\u0026required69596af3-2230-4818-90a8-16dfffa67dc7-1\u003dCUSTOM_BLUE\u0026required69596af3-2230-4818-90a8-16dfffa67dc7-2\u003dCUSTOM_BLUE\u0026required69596af3-2230-4818-90a8-16dfffa67dc7-3\u003dCUSTOM_BLUE\u0026resources\u003dDISK_GB%3A20%2CMEMORY_MB%3A2048%2CVCPU%3A2\u0026resources69596af3-2230-4818-90a8-16dfffa67dc7-0\u003dCUSTOM_MY_PCI%3A1\u0026resources69596af3-2230-4818-90a8-16dfffa67dc7-1\u003dCUSTOM_MY_PCI%3A1\u0026resources69596af3-2230-4818-90a8-16dfffa67dc7-2\u003dCUSTOM_MY_PCI%3A1\u0026resources69596af3-2230-4818-90a8-16dfffa67dc7-3\u003dCUSTOM_MY_PCI%3A1\u0026root_required\u003d%21COMPUTE_STATUS_DISABLED\" status: 200 len: 829096 microversion: 1.36\n```","commit_id":"9381f79470d9bb682edfb8ce083fa273f603edcc"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"07d280c76b17c30308a73ac0c8b18f219f835ab6","unresolved":true,"context_lines":[{"line_number":2061,"context_line":"    def test_combinatorial_explosion_multiple_dev_per_rp(self):"},{"line_number":2062,"context_line":"        # Make sure that we have enough VF at each PF to potentially fulfill"},{"line_number":2063,"context_line":"        # the whole request from the same PF/RP."},{"line_number":2064,"context_line":"        # With a single host this will result in 4096 candidates"},{"line_number":2065,"context_line":"        rps \u003d 8"},{"line_number":2066,"context_line":"        requested_devs \u003d 4"},{"line_number":2067,"context_line":"        pci_info \u003d fakelibvirt.HostPCIDevicesInfo("}],"source_content_type":"text/x-python","patch_set":4,"id":"63ea29ef_ef6a8cf7","line":2064,"updated":"2024-11-26 12:34:30.000000000","message":"```\n2024-11-26 13:32:21,337 DEBUG [placement.objects.allocation_candidate] Merging candidates yields 4096 allocation requests and 9 provider summaries\n2024-11-26 13:32:21,337 DEBUG [placement.objects.research_context] Limiting results yields 1000 allocation requests and 9 provider summaries\n2024-11-26 13:32:21,355 INFO [placement.requestlog] 127.0.0.1 \"GET /placement/allocation_candidates?group_policy\u003dnone\u0026limit\u003d1000\u0026requiredf50e73a2-25c1-472c-8dbd-33450137b9f8-0\u003dCUSTOM_BLUE\u0026requiredf50e73a2-25c1-472c-8dbd-33450137b9f8-1\u003dCUSTOM_BLUE\u0026requiredf50e73a2-25c1-472c-8dbd-33450137b9f8-2\u003dCUSTOM_BLUE\u0026requiredf50e73a2-25c1-472c-8dbd-33450137b9f8-3\u003dCUSTOM_BLUE\u0026resources\u003dDISK_GB%3A20%2CMEMORY_MB%3A2048%2CVCPU%3A2\u0026resourcesf50e73a2-25c1-472c-8dbd-33450137b9f8-0\u003dCUSTOM_MY_VF%3A1\u0026resourcesf50e73a2-25c1-472c-8dbd-33450137b9f8-1\u003dCUSTOM_MY_VF%3A1\u0026resourcesf50e73a2-25c1-472c-8dbd-33450137b9f8-2\u003dCUSTOM_MY_VF%3A1\u0026resourcesf50e73a2-25c1-472c-8dbd-33450137b9f8-3\u003dCUSTOM_MY_VF%3A1\u0026root_required\u003d%21COMPUTE_STATUS_DISABLED\" status: 200 len: 772876 microversion: 1.36\n\n```","commit_id":"9381f79470d9bb682edfb8ce083fa273f603edcc"}],"nova/tests/functional/libvirt/test_vgpu.py":[{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a29acb4ee3e5045675f6f5937f2e4200cb98ea21","unresolved":true,"context_lines":[{"line_number":905,"context_line":"        flavor \u003d self._create_flavor(extra_spec\u003dextra_spec)"},{"line_number":906,"context_line":"        self._create_server("},{"line_number":907,"context_line":"            image_uuid\u003d\u0027155d900f-4e14-4e4c-a73d-069cbf4541e6\u0027,"},{"line_number":908,"context_line":"            flavor_id\u003dflavor, networks\u003d\u0027auto\u0027)"},{"line_number":909,"context_line":""},{"line_number":910,"context_line":"        # this results in 4096 allocation candidates from a single host."}],"source_content_type":"text/x-python","patch_set":6,"id":"d457e1a1_e15f6473","line":908,"updated":"2024-11-27 10:20:59.000000000","message":"FWIW, there is a very old bug report that was referring to nvidia not supporting multiple vgpus per instance https://bugs.launchpad.net/nova/+bug/1758086 which has a fix that hasn\u0027t merged yet https://review.opendev.org/c/openstack/nova/+/845757\n\nAs you can see in the logs, the request you wrote with 4 vGPUs is then limited to one single VGPU request : https://github.com/openstack/nova/blob/d9f9b3abb393d18bca05c681433491ce98f9b925/nova/virt/libvirt/driver.py#L8991-L8995\n\nWe\u0027re then limiting the request but the list of allocation candidates is still that large, so that\u0027s still a problem that we need to fix.","commit_id":"cdc3b4b143b28bf96601728921f817f84c4963e5"},{"author":{"_account_id":9708,"name":"Balazs Gibizer","display_name":"gibi","email":"gibizer@gmail.com","username":"gibi"},"change_message_id":"8bb0f3fb813ea8bf778a5fc288e685118069a2e9","unresolved":true,"context_lines":[{"line_number":907,"context_line":"            image_uuid\u003d\u0027155d900f-4e14-4e4c-a73d-069cbf4541e6\u0027,"},{"line_number":908,"context_line":"            flavor_id\u003dflavor, networks\u003d\u0027auto\u0027)"},{"line_number":909,"context_line":""},{"line_number":910,"context_line":"        # this results in 4096 allocation candidates from a single host."}],"source_content_type":"text/x-python","patch_set":6,"id":"2c23fe53_3c137a8d","line":910,"updated":"2024-11-26 17:17:29.000000000","message":"```\n2024-11-26 18:13:35,414 DEBUG [placement.objects.allocation_candidate] Merging candidates yields 4096 allocation requests and 9 provider summaries\n2024-11-26 18:13:35,415 DEBUG [placement.objects.research_context] Limiting results yields 1000 allocation requests and 9 provider summaries\n2024-11-26 18:13:35,432 INFO [placement.requestlog] 127.0.0.1 \"GET /placement/allocation_candidates?group_policy\u003dnone\u0026limit\u003d1000\u0026resources\u003dDISK_GB%3A20%2CMEMORY_MB%3A2048%2CVCPU%3A2\u0026resources1\u003dVGPU%3A1\u0026resources2\u003dVGPU%3A1\u0026resources3\u003dVGPU%3A1\u0026resources4\u003dVGPU%3A1\u0026root_required\u003d%21COMPUTE_STATUS_DISABLED\" status: 200 len: 600148 microversion: 1.36\n```","commit_id":"cdc3b4b143b28bf96601728921f817f84c4963e5"},{"author":{"_account_id":7166,"name":"Sylvain Bauza","email":"sbauza@redhat.com","username":"sbauza"},"change_message_id":"a29acb4ee3e5045675f6f5937f2e4200cb98ea21","unresolved":true,"context_lines":[{"line_number":907,"context_line":"            image_uuid\u003d\u0027155d900f-4e14-4e4c-a73d-069cbf4541e6\u0027,"},{"line_number":908,"context_line":"            flavor_id\u003dflavor, networks\u003d\u0027auto\u0027)"},{"line_number":909,"context_line":""},{"line_number":910,"context_line":"        # this results in 4096 allocation candidates from a single host."}],"source_content_type":"text/x-python","patch_set":6,"id":"5adf7d56_16ce0914","line":910,"in_reply_to":"2c23fe53_3c137a8d","updated":"2024-11-27 10:20:59.000000000","message":"Thanks for the test...","commit_id":"cdc3b4b143b28bf96601728921f817f84c4963e5"}]}
