From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from lists.gnu.org (lists.gnu.org [209.51.188.17]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by smtp.lore.kernel.org (Postfix) with ESMTPS id 0F7ACCEF14D for ; Tue, 8 Oct 2024 10:31:13 +0000 (UTC) Received: from localhost ([::1] helo=lists1p.gnu.org) by lists.gnu.org with esmtp (Exim 4.90_1) (envelope-from ) id 1sy7UR-0005Tv-Cl; Tue, 08 Oct 2024 06:30:51 -0400 Received: from eggs.gnu.org ([2001:470:142:3::10]) by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sy7UP-0005Td-6v; Tue, 08 Oct 2024 06:30:49 -0400 Received: from frasgout.his.huawei.com ([185.176.79.56]) by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (Exim 4.90_1) (envelope-from ) id 1sy7UM-0007Tl-Tq; Tue, 08 Oct 2024 06:30:48 -0400 Received: from mail.maildlp.com (unknown [172.18.186.231]) by frasgout.his.huawei.com (SkyGuard) with ESMTP id 4XNBy71NNgz6GFS5; Tue, 8 Oct 2024 18:26:23 +0800 (CST) Received: from frapeml500008.china.huawei.com (unknown [7.182.85.71]) by mail.maildlp.com (Postfix) with ESMTPS id D6A581402C6; Tue, 8 Oct 2024 18:30:40 +0800 (CST) Received: from localhost (10.203.177.66) by frapeml500008.china.huawei.com (7.182.85.71) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.1.2507.39; Tue, 8 Oct 2024 12:30:39 +0200 Date: Tue, 8 Oct 2024 11:30:38 +0100 To: Zhao Liu CC: "Daniel P . =?ISO-8859-1?Q?Berrang=E9?=" , "Igor Mammedov" , Eduardo Habkost , Marcel Apfelbaum , Philippe =?ISO-8859-1?Q?Ma?= =?ISO-8859-1?Q?thieu-Daud=E9?= , Yanan Wang , "Michael S . Tsirkin" , "Paolo Bonzini" , Richard Henderson , Sergio Lopez , Jason Wang , Stefano Stabellini , "Anthony PERARD" , Paul Durrant , "Edgar E . Iglesias" , Eric Blake , Markus Armbruster , Alex =?ISO-8859-1?Q?Benn=E9e?= , Peter Maydell , , , , "Zhenyu Wang" , Dapeng Mi , Yongwei Ma Subject: Re: [RFC v2 00/12] Introduce Hybrid CPU Topology via Custom Topology Tree Message-ID: <20241008113038.00007ee4@Huawei.com> In-Reply-To: <20240919061128.769139-1-zhao1.liu@intel.com> References: <20240919061128.769139-1-zhao1.liu@intel.com> Organization: Huawei Technologies Research and Development (UK) Ltd. X-Mailer: Claws Mail 4.1.0 (GTK 3.24.33; x86_64-w64-mingw32) MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit X-Originating-IP: [10.203.177.66] X-ClientProxiedBy: lhrpeml500004.china.huawei.com (7.191.163.9) To frapeml500008.china.huawei.com (7.182.85.71) Received-SPF: pass client-ip=185.176.79.56; envelope-from=jonathan.cameron@huawei.com; helo=frasgout.his.huawei.com X-Spam_score_int: -41 X-Spam_score: -4.2 X-Spam_bar: ---- X-Spam_report: (-4.2 / 5.0 requ) BAYES_00=-1.9, RCVD_IN_DNSWL_MED=-2.3, RCVD_IN_MSPIKE_H3=0.001, RCVD_IN_MSPIKE_WL=0.001, RCVD_IN_VALIDITY_CERTIFIED_BLOCKED=0.001, RCVD_IN_VALIDITY_RPBL_BLOCKED=0.001, SPF_HELO_NONE=0.001, SPF_PASS=-0.001 autolearn=ham autolearn_force=no X-Spam_action: no action X-BeenThere: qemu-devel@nongnu.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Reply-to: Jonathan Cameron From: Jonathan Cameron via Errors-To: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org Sender: qemu-devel-bounces+qemu-devel=archiver.kernel.org@nongnu.org On Thu, 19 Sep 2024 14:11:16 +0800 Zhao Liu wrote: > -smp maxsockets=1,maxdies=1,maxmodules=2,maxcores=2,maxthreads=2 > -machine pc,custom-topo=on \ > -device cpu-socket,id=sock0 \ > -device cpu-die,id=die0,bus=sock0 \ > -device cpu-module,id=mod0,bus=die0 \ > -device cpu-module,id=mod1,bus=die0 \ > -device x86-intel-core,id=core0,bus=mod0 \ > -device x86-intel-atom,id=core1,bus=mod1 \ > -device x86-intel-atom,id=core2,bus=mod1 \ > -device host-x86_64-cpu,id=cpu0,socket-id=0,die-id=0,module-id=0,core-id=0,thread-id=0 \ > -device host-x86_64-cpu,id=cpu1,socket-id=0,die-id=0,module-id=0,core-id=0,thread-id=1 \ > -device host-x86_64-cpu,id=cpu2,socket-id=0,die-id=0,module-id=1,core-id=0,thread-id=0 \ > -device host-x86_64-cpu,id=cpu3,socket-id=0,die-id=0,module-id=1,core-id=1,thread-id=0 I quite like this as a way of doing the configuration but that needs some review from others. Peter, Alex, do you think this scheme is flexible enough to ultimately allow us to support this for arm? > > This does not accommodate hybrid topologies. Therefore, we introduce > max* parameters: maxthreads/maxcores/maxmodules/maxdies/maxsockets > (for x86), to predefine the topology framework for the machine. These > parameters also constrain subsequent custom topologies, ensuring the > number of child devices under each parent device does not exceed the > specified max limits. To my thinking this seems like a good solution even though it's a bunch more smp parameters. What does this actually mean for hotplug of CPUs? What cases work with this setup? > Therefore, once user wants to customize topology by "-machine > custom-topo=on", the machine, that supports custom topology, will skip > the default topology creation as well as the default CPU creation. Seems sensible to me. Jonathan