Computing system partition generator

The graphic representation and dynamic partitioning of the computing system are generated by computing devices, which solves the technical challenges of analyzing and debugging dies in high-performance computing systems, realizes efficient performance monitoring and resource utilization, and simplifies the debugging process.

CN119968622APending Publication Date: 2025-05-09TESLA INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380070069.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-09-30
Filing Date
2023-09-28
Publication Date
2025-05-09

AI Technical Summary

Technical Problem

In high-performance computing systems, especially systems with large numbers of processing dies, there are technical challenges in analyzing and debugging dies and associated computing systems, including difficulty in real-time detection of specific dies that lead to performance degradation and inefficient utilization of computing resources to determine the cause of performance degradation.

Method used

The graphic representation of the computing system is generated by a computing device, identifying partitions and individual dies in partitions, providing functional related information, and dynamically generating partitions to monitor and analyze die performance, identifying functionalized, partially functionalized or non-functionalized dies.

Benefits of technology

It realizes efficient partitioning and performance monitoring of the computing system, quickly identify the causes of performance degradation, improves the utilization efficiency of computing resources, and simplifies the debugging and testing process.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119968622A_ABST
    Figure CN119968622A_ABST
Patent Text Reader

Abstract

The present disclosure relates to a computing device and method for generating a graphical representation of one or more portions of a computing system. For example, a computing device may include a computing processor and a memory, and is configured to access configuration information identifying a partition of a computing system, where the computing system includes an array of systems on wafer (SoWs), and each SoW of the array of SoWs includes an array of dies; and generating a graphical representation of at least a portion of the computing system, wherein the graphical representation identifies the partition and the respective dies of the partition.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] CROSS-REFERENCE TO RELATED APPLICATIONS

[0002] This application claims the benefit of priority to U.S. Provisional Application No. 63 / 378,029, filed on September 30, 2022, and is entitled “System-on-a-Chip Partition Generator,” and the disclosure of which is incorporated herein by reference in its entirety. Technical Field

[0003] The present disclosure generally relates to partitioning a computing system and / or generating a graphical representation of a computing system. Background Art

[0004] Certain computing systems may be used and / or specifically configured for high performance computing and / or computing intensive applications, such as neural network training, neural network reasoning, machine learning, artificial intelligence, complex simulations, etc. In some applications, a computing system may be used to perform neural network training. For example, such neural network training may generate data for an autonomous driving system of a vehicle (e.g., a car), other autonomous vehicle functions, or advanced driver assistance system (ADAS) functions.

[0005] In high performance computing systems, there may be a high density of processing die. It may be desirable to analyze one or more portions of the high density die for analysis and debugging of the high density die. In computing systems with a large number of processing die, there are technical challenges associated with analyzing and debugging the die and associated computing systems. Summary of the invention

[0006] The innovations described in the claims each have several aspects, no single one of which is solely responsible for its desirable attributes. Without limiting the scope of the claims, some of the prominent features of the disclosure will now be briefly described.

[0007] One aspect of the present disclosure is a computing device for generating a graphical representation of a computing system. The computing device includes a computing processor and a memory storing computer executable instructions that, when executed by the computing processor, cause operations to be performed, the operations including accessing configuration information identifying a partition of the computing system, and generating a graphical representation of at least a portion of the computing system. The computing system includes an array of systems on a wafer (SoW), and each SoW of the array of SoWs includes an array of die. In addition, the graphical representation identifies the partitions and individual die of the partitions.

[0008] In the computing device, the graphical representation can provide information associated with the functionality of the individual dies of the partition. In addition, the information associated with the functionality of the individual dies of the partition can indicate whether the individual dies are functional, partially functional, or non-functional.

[0009] In a computing device, configuration information may define voltage supply levels and clock frequencies for each of the partitions.

[0010] In the computing device, the operations may also include checking for illegal configurations of the configuration information.

[0011] In the computing device, the operations may also include dynamically generating partitions.

[0012] In the computing device, the operations may also include generating a second graphical representation of the dies of one of the partitions, and the second graphical representation may indicate errors on one or more nodes of a particular die of the partition.

[0013] In a computing device, the computing device may include a display configured to display a graphical representation.

[0014] Another aspect of the present disclosure is a method of generating a graphical representation of a computing system. The method includes accessing configuration information identifying partitions of the computing system and generating a graphical representation of at least a portion of the computing system. The computing system includes an array of systems on wafers (SoWs), and each SoW of the array of SoWs includes an array of die. In addition, the graphical representation identifies the partitions and individual die of the partitions.

[0015] In this method, the graphical representation may provide information associated with the functionality of the individual dies of the partition. In addition, the information associated with the functionality of the individual dies of the partition may indicate whether the individual dies are functionalized, partially functionalized, or non-functionalized.

[0016] In this method, configuration information may define voltage supply levels and clock frequencies for each of the partitions.

[0017] In the method, the method may further include checking for illegal configuration of the configuration information.

[0018] In the method, the method may further include dynamically generating partitions.

[0019] In the method, the method may further include generating a second graphical representation of the dies of one of the partitions, wherein the second graphical representation indicates errors on one or more nodes of a particular die of the partition.

[0020] In the method, the method may further include displaying the graphical representation on a display.

[0021] Another aspect of the present disclosure is a non-transitory computer-readable storage medium. The storage medium includes instructions that, when executed by one or more processors, cause execution of a method of accessing configuration information identifying a partition of a computing system and generating a graphical representation of at least a portion of the computing system. The computing system includes an array of systems on a wafer (SoW), and each SoW of the array of SoWs includes an array of die. In addition, the graphical representation identifies the partitions and the individual dies of the partitions.

[0022] To summarize the present disclosure, certain aspects, advantages, and novel features of the innovations are described herein. It should be understood that not all such advantages may be achieved according to any particular embodiment. Thus, the innovations may be embodied or implemented in a manner that achieves or optimizes one advantage or a group of advantages taught herein without necessarily achieving other advantages taught or suggested herein. BRIEF DESCRIPTION OF THE DRAWINGS

[0023] Embodiments of the present disclosure will be described by way of non-limiting examples with reference to the accompanying drawings.

[0024] Figure 1 An example of a system tray and associated cabinets is illustrated according to one embodiment.

[0025] Figure 2 is a schematic diagram of an example computing system in accordance with various embodiments disclosed herein.

[0026] Figure 3 An example of a computing system according to embodiments disclosed herein is illustrated.

[0027] Figure 4A An example of a system on wafer (SoW) including an array of dies is illustrated.

[0028] Figure 4B Examples of nodes included in a die are illustrated.

[0029] Figure 5A Illustrated are examples of block diagrams of example computing systems and computing devices according to various embodiments of the present disclosure.

[0030] Figure 5B An example of a command interface according to embodiments disclosed herein is illustrated.

[0031] Figure 5C Illustrated is an example graphical representation of a die of a SoW array according to embodiments disclosed herein.

[0032] Figure 5D An example of a command interface for generating partitions of a SoW array provided according to an embodiment disclosed herein is illustrated.

[0033] Figure 5EIllustrated is a pictorial example of an array of 3×2 SoWs according to embodiments disclosed herein.

[0034] Fig. 5F Illustrated is an example graphical representation of nodes for a partition of a 2x2 array of dies according to embodiments disclosed herein.

[0035] Figure 5G Illustrated is a graphical representation of a 2x2 array of instances of a single SoW according to embodiments disclosed herein.

[0036] Figure 6 One embodiment of an architecture for a computing device according to some embodiments disclosed herein is depicted. DETAILED DESCRIPTION

[0037] The following detailed description of certain embodiments presents various descriptions of specific embodiments. However, the innovations described herein may be implemented in a variety of different ways, for example, as defined and covered by the claims. In this specification, reference is made to the accompanying drawings in which the same reference numerals and / or terms may indicate the same or functionally similar elements. It should be understood that the elements illustrated in the figures are not necessarily drawn to scale. In addition, it should be understood that certain embodiments may include more elements than illustrated in the drawings and / or a subset of the elements illustrated in the drawings. In addition, some embodiments may combine any suitable combination of features from two or more drawings.

[0038] The present disclosure relates to a partition generator for a computing system and uses of the partition generator, such as generating a graphical representation of a computing system, dynamic partitioning, and using the partition generator to test a single system on a wafer. For example, aspects of the present disclosure provide a system for automatically partitioning one or more systems (SoWs) on a wafer. In some aspects, partitions may be defined at various levels or hierarchies so that a partition may include a portion of a SoW, a single SoW, more than one SoW die, or multiple SoWs. The system disclosed herein may identify a hierarchical representation of a computing system by identifying a SoW arrangement and a die arrangement for each SoW. The system may also generate partitions based on identifying one or more of these arrangements. In some aspects, one or more partitions may be graphically represented to visualize such partitions (one or more) in the context of various hierarchical representations. The graphical representation is useful when debugging a computing system.

[0039] In various aspects of the present disclosure, a computing system may include one or more computing tiles, and each computing tile may include a system on a wafer (SoW) and is configured to perform computing tasks of the computing system. According to some embodiments, each SoW may include a plurality of dies. For example, each SoW may include an array of integrated circuit dies (hereinafter referred to as "dies"). Using SoWs, a computing system can achieve high computing density. SoWs may include an integrated cooling system. A system tray may include an array of SoWs supported by a common structure and interconnected. The system tray may be arranged in a computer cabinet. In a computing system, a plurality of adjacent computer cabinets may be interconnected. According to any suitable principles and advantages disclosed herein, any suitable number of SoWs and dies in each SoW may be used.

[0040] As the demand for computing resources of computing systems increases, high-density computing systems are needed. As described above, some computing systems may include one or more SoWs, and each SoW may include an array of die. During computing operations or before installing the SoW into a computing system, the performance of the SoW may be monitored and / or tested to ensure that the performance meets design specifications. However, monitoring the operation and / or performance of such computing systems may be challenging. For example, one or more die of the SoW may have reduced performance, and the reduced performance of these one or more die may degrade the overall performance of the computing system.

[0041] Traditionally, performance monitoring of large computing systems involves a large number of computing resources. Identifying specific portions of such computing systems that have degraded performance and / or errors, and performing post-processing (e.g., debugging) to ensure that performance meets its expected specifications, involves a large number of computing resources. For example, in a system with 6 SoWs, each of which includes an array of 5×5 die, a traditional system may analyze all 150 die included in the computing system to evaluate performance. In addition, a traditional system may not be able to easily detect one or more specific die that are causing performance degradation in such a system in real time. For example, a traditional system may obtain a system log, store the obtained log, and analyze the log. If one or more of the die in the SoW of a traditional system becomes inoperable or has degraded performance, these defects of the traditional system may cause the overall performance of the computing system to be degraded. In addition, when it is determined that the computing system has degraded performance, determining which die in the SoW caused the performance degradation by analyzing the entire computing system (such as a log of the entire computing log) may result in inefficient utilization of computing resources within the computing system.

[0042] To address at least a portion of the above technical challenges, one or more aspects of the present disclosure correspond to a computing device that can partition a computing system at various levels of the system and generate a graphical representation of the computing system. Illustratively, the computing device disclosed herein can be communicatively coupled to a computing system and can partition a SoW included in the computing system. The computing device can then analyze the partitioned SoW (e.g., the die included in the partitioned SoW) to identify performance metrics of the die, and perform debugging of its operation when it is identified that the performance metric does not meet a specific computing performance specification. The present disclosure is not limited to the specific computing performance specifications disclosed herein and can be determined based on a specific application.

[0043] As disclosed herein, a SoW of a computing system can be partitioned, and the performance of individual die included in the partitioned SoW can be monitored and analyzed to determine whether the die provide the desired (or designed) computing performance. For example, a single SoW can include 25 die, each die being configured to provide its performance data. For example, the performance metric of each die can be measured based on telemetry data provided by the corresponding die. Therefore, the performance of each SoW can be determined based on the measured performance metric of each die. More specifically, each die can include one or more nodes that are designed to measure the performance metrics of its neighboring nodes. The performance of the SoW is then determined based on these measured performance metrics from the associated die.

[0044] In some aspects of the present disclosure, after a SoW is partitioned, the partitioned SoW may include one or more die, whose performance may be monitored. The process of partitioning a SoW and analyzing the die within the partitioned SoW may be advantageous because it may allow for efficient use of computing resources when investigating any degradation in computing system performance or causes of computing system failures. For example, if the performance of a computing system degrades, the computing device described herein may partition sections of the SoW and identify the factors that caused the degradation in performance. This may be more efficient than conventional systems that involve analyzing the entire SoW.

[0045] Furthermore, if new SoWs are added to the computing system, the computing device can monitor the performance metrics of these newly added SoWs by partitioning them. Thus, the systems and methods disclosed herein can allow efficient use of computing resources while analyzing operational metrics of the computing system and identifying any die that degrades performance. Performance metrics in the present disclosure can include, but are not limited to, power consumption, utilization, availability, throughput, computing latency, etc.

[0046] Although the embodiments disclosed herein may relate to a computing system having a SoW, any suitable principles and advantages disclosed herein may be applied to a computing system including multiple dies partitioned for performing computing tasks.

[0047] The principles and advantages disclosed herein can be applied to any suitable computing device. Although aspects of the present disclosure will be described with respect to illustrative computing components and interactions, those skilled in the relevant art will appreciate that one or more aspects of the present disclosure can be implemented according to various environments, system architectures, computing device architectures, etc. In addition, these examples are illustrative in nature and should not be construed as limiting.

[0048] In a non-limiting example, multiple SoWs may be implemented as computing resources of a computing system. Figure 1 As shown, multiple SoWs may be implemented in one or more cabinets, such as Figure 1 The cabinet 120 is shown.

[0049] Figure 1 An example of a system tray 100 according to one embodiment is illustrated. As shown, the system tray 100 may include an array of computing tiles 102 interconnected and supported by a structural bus 104. The structural bus 104 may provide structural support and deliver power to the computing tiles 102 positioned thereon. In certain embodiments, each computing tile 102 includes a SoW that includes an array of die integrated with a cooling solution (e.g., a cold plate). In neural network training applications, the computing tiles 102 may be referred to as training tiles. Any suitable number of computing tiles 102 may be interconnected on the system tray 100. For example, Figure 1 Six compute tiles 102 are illustrated that are interconnected. System tray 100 may include intra-tray signal delivery cables 108 to facilitate communication between each compute tile 102 and an external connection hub (not shown). Compute tiles 102 may each include a SoW.

[0050] The computing tiles 102 can be positioned close to each other so that the connections between the computing tiles 102 (such as connections established by the intra-tray signal delivery cables 108) are relatively short to facilitate high-speed connectivity. The system tray 100 can operate at relatively high power and maintain mechanical integrity and dissipate enough heat to operate at a suitable temperature. The illustrated system tray 100 can support dense integration. For example, the system tray 100 can support considerable mass and maintain a relatively small height.

[0051] like Figure 1As shown, the system tray 100 may include stepped edges 106 disposed along the length of opposite sides of the system tray 100. The stepped edges 106 may facilitate sliding the system tray 100 into and out of a cabinet, such as a computer cabinet 120. The system tray 100 may be moved into and out of the cabinet 120 via slots 122. The system tray 100 may include handles 110 to help facilitate moving the system tray 100 into and out of the cabinet. The structural bus 104 may include multiple layers that provide structural and electrical support for the computing tiles 102. Although Figure 1 A specific structure of system tray 100 and cabinet 120 is described, but any suitable principles and advantages disclosed herein may be applied to any suitable computing system.

[0052] In some embodiments, the computing tile 102 may include one or more of a cooling system, a voltage regulator module, a frame structure, a SoW, and a heat dissipation structure. An example of a computing tile 102 is disclosed in International PCT Application No. PCT / US2022 / 040420, entitled "Connector System and Related Method for Connecting Processor Systems", which is incorporated herein by reference in its entirety. In some applications, the computing tile 102 may include a communication interface for data communication with a computing device. For example, as disclosed herein, a computing device may receive data from one or more SoWs included in the computing tile 102, and perform partitioning of the SoWs according to the embodiments disclosed herein. In addition, the computing device may analyze the performance of the partitioned SoWs (e.g., the die included in the partitioned SoWs) and generate a graphical representation of the analyzed performance of the die and / or SoWs. In some applications, the cabinet 120 includes a communication interface and a controller to be communicatively coupled to the computing device. The present application is not limited to the number of SoWs communicatively coupled to the computing device.

[0053] Figure 2 An example of a computing system 200 according to various embodiments disclosed herein is illustrated. The computing system 200 may be implemented in several computer cabinets and run as a computing system that may be partitioned to perform various computing tasks. Figure 2 As shown, computing system 200 may include several computing tiles 102. In some scenarios, these computing tiles 102 may be linked with peripheral components and implemented as part of computing system 200. Peripheral components may include, but are not limited to, host 202 and interface processors, such as network interface processor (NIP) 206.

[0054] In various scenarios, a host 202 can be used to identify a host address associated with one or more compute tiles 102. For example, a host 202 in a group 210 can provide a specific host address to the compute tiles 102 within the group 210, thereby allowing these compute tiles 102 to share the host address provided by the host 202.

[0055] In some scenarios, NIP 204 can facilitate communication between computing tiles 102. For example, computing tiles 102 can exchange data with adjacent computing tiles 102. In other scenarios, computing tiles 102 can communicate data with computing devices via NIP 204. For example, a computing device can receive configuration information of each computing tile 102 through NIP 204 and via host 202.

[0056] In some scenarios, the die in each compute tile 102 may provide data related to its performance via NIP 204. For example, a die within a compute tile 102 may send data indicating the availability of its compute node to a computing device via one of NIP 204 and host 202.

[0057] In some embodiments, the peripheral components may also include memory, such as high bandwidth memory (HBM) 206. In various non-limiting examples, the system tray 100 ( Figure 1 2 ) may include six computing tiles 102 of group 220. Group 220 may also include corresponding peripheral components, including NIP 204, HBM 206, and host 202.

[0058] Figure 3 2 illustrates an example of a computing system 300 according to embodiments disclosed herein. Figure 3 As shown, computing system 300 may include a SoW array 310. For example, each SoW 312 of SoW array 310 may be included in Figure 1 The SoW array 310 may include SoWs 312 on one or more system trays and / or within one or more cabinets. The SoW array 310 may be used as a computing resource for the computing system 300. The number of SoWs 312 of the SoW array 310 may be determined based on a specific application.

[0059] like Figure 3 As shown, each SoW 312 may include a die array 320. For example, in addition Figure 3 As shown in , die array 320 may include die 322. Figure 3 As shown, each die 322 may be arranged in die array 320 and may be logically represented by an array address, such as U00-U44. In some embodiments, interface processor 324 may communicate with Figure 2 The interface processor 324 can communicate with the NIP 204 via the NIP 204. Figure 2 The host 202 receives the information. The interface processor 324 can communicate with the NIP using the Ethernet protocol. In various examples, any suitable number of dies 322 can be included in the SoW 312.

[0060] Figure 4A An example of a SoW 312 is illustrated that includes a die array 320 that includes die 322. Each die 322 may be an integrated circuit die. The die 322 may be implemented on a SoW 312 packaged with a wafer level packaging structure.

[0061] like Figure 4B As shown, in some embodiments, the die 322 may include an array of nodes. The array of nodes may include a computing node 406 and a global node 408. In some embodiments, the computing node 406 may include a circuit for performing a processing task. The global node 408 may generate telemetry data for the die 322. The global node 408 may not include a circuit for performing a processing task. For example, the global node 408 may include a pressure, voltage, and temperature (PVT) sensor to monitor the operating conditions of the die 322. In some embodiments, both the computing node 406 and the global node 408 may include a communication interface to enable communication with adjacent nodes. For example, each global node 408 may monitor the operating voltage of the surrounding nodes by receiving the current power supply voltage from the adjacent nodes via the communication interface. In some embodiments, the communication interface of the computing node 406 may be the same as the communication interface of the global node 408.

[0062] In some embodiments, each die 322 may provide performance data associated with each node 406. Performance data may refer to information generated from each die. The performance data may include, but is not limited to, environmental information, such as ambient and / or operating temperature of the die(s), operational parameters, such as power supplies for each die, current and / or voltage measurements for the die(s), and performance information, such as usage, bandwidth, and / or latency of the die(s). The performance data may include data about the functionality of a portion of a die 322, such as each compute node 406. Each die 322 may be configured to communicate data from a SoW 312 via an input / output interface 412. The input / output interface 412 may also communicate with an interface processor 324 (e.g., Figure 3In this example, the global node 408 can be configured to provide its data to the SoW 312 via the interface 412. In some scenarios, the global node 408 can continuously monitor the operating parameters of the computing node 406 by enabling the communication interface with the adjacent computing node 406. In addition, the global node 408 can continuously measure the operating temperature of the tube core 322.

[0063] Figure 5A 5 illustrates an example of a block diagram of a computing system 500 and a computing device 510 according to various embodiments of the present disclosure. The computing system 500 may correspond to, for example, Figure 2 and Figure 3 5. The computing system 500 and / or 300 described in the foregoing may be a computing system 200 and / or 300. For example, the computing system 500 may include at least a SoW array 310, which includes a SoW 312. In some embodiments, the computing system 500 may be communicatively coupled to a computing device 510. The SoW 312 may communicate with the computing device 510 via the NIPS and the host. In some cases, the computing system 500 and the computing device 510 are connected via a network, which may be wireless or wired. The network may include any combination of wired and / or wireless networks, such as one or more direct communication channels, a local area network, a wide area network, a personal area network, and / or the Internet. The network may include a data bus of a specific type for transmitting data.

[0064] In some embodiments, computing device 510 may include any suitable computing device(s), such as one or more server computers, one or more desktop computers, etc. In some embodiments, computing device 510 may store instructions and execute instructions to perform one or more operations of the embodiments disclosed herein. In various embodiments, a user (e.g., a system operator, an administrator, a developer, etc.) may interact with computing system 500 by utilizing computing device 510. In some embodiments, such interaction may be accomplished via an interactive graphical user interface, via a command line, and / or any other suitable means. For example, a graphical user interface of computing device 510 may display a graphical representation of the processing results of data received from computing system 500, such as data related to the performance of each SoW 312 and / or the die included in SoW 312. In addition, computing device 510 may provide an interface to provide commands for partitioning SoWs. For example, a user may logically partition SoWs by generating one or more commands specifying partition information.

[0065] In some applications, the computing system 500 may include one or more controllers ( Figure 5A 510) to provide data to the computing device 510. For example, one or more controllers may be Figure 1is implemented in the cabinet 120 and provides data, such as the cabinet 120 Figure 1 Configuration information of the computing tile 102, performance data of each computing tile 102, performance data of the die of the computing tile 102, etc. In addition, Figure 2 The host 202 of the system tray 100 may include a controller, and the controller may provide configuration information of the computing tiles 102 in the system tray 100 to the computing device 510. In some embodiments, the controller may receive instructions from the computing device 510 and process data based on the received instructions. For example, the computing device 510 may perform partitioning of the SoW and request data, such as performance metrics of the partitioned SoW. In this example, the controller may identify the partitioned SoW and process performance metrics, such as usage, bandwidth, and / or latency of the die(s), and transmit the processed performance metrics to the computing device 510.

[0066] Computing device 510 may also be configured to manage configuration of compute tiles 102. More specifically, computing device 510 may manage configuration by identifying each compute tile 102 based at least on an identifier of the compute tile 102, a location of the compute tile 102, and configuration information of the compute tile 102.

[0067] Figure 5B An example of a command interface 530 according to embodiments disclosed herein is illustrated. Figure 5B The information shown can concisely define the partitioning of the computing system. The command interface 530 can provide various fields to identify the configuration of the SoW array 310 and the configuration of the die 322 included in each SoW 312. Figure 5B As shown, command interface 530 may include SoW array configuration field 532, definition field 534, SoW configuration field 536, and address field 538. The information in these fields together may define the partitions of the computing system. The fields in command interface 530 may be based on a two-dimensional coordinate system and specified based on a starting coordinate (e.g., top left) and an ending coordinate (e.g., bottom right). The partition generator may be aware of the hardware that selects the partition based on these coordinates. The partition generator may apply certain boot time configuration values, such as the power supply voltage and clock frequency of the various die. As shown in FIG. Figure 5B The fields shown are described merely as examples, and more or fewer fields may be used based on the particular application.

[0068] The SoW array configuration field 532 may provide the SoW array configuration. Figure 5B As shown, the SoWs are arranged in an array (e.g., six SoWs defined as SoWs 0-5), as shown in field 532. This arrangement may correspond to Figure 1 The system tray 100 includes an arrangement of computing tiles 102 .

[0069] The limit field 534 can be used to limit each SoW configuration information. For example, Figure 5B The qualification fields 534 in include the name, location, IP address and host address of each SoW. Therefore, each SoW can be qualified with such field information.

[0070] The SoW configuration field 536 may define the configuration information of each SoW. For example, a name is a SoW identification number that may be assigned to each SoW. However, this representation is provided merely as an example, and any other suitable identification number may be used in accordance with any suitable principles and advantages disclosed herein. Figure 5B The location in this particular example of may be defined based on the cabinet 120. For example, SoW 0 is included in the system tray 100 of cabinet 120, and the location field may identify the cabinet 120 that includes SoW 0. The SoW configuration field 536 may also provide interface processing information for each die 322 of the SoW. For example, Figure 5B As shown, the tube core 322 (U04, U03, U02, U01, U00) of SoW 0 is used Figure 2 The NIP 204 is identified by its host name and channel number. Figure 2 As described in , host 202 may provide the host name of each corresponding SoW, and NIP 204 may provide the specific channel number to which each die of the SoW is connected.

[0071] The address field 538 may also provide a specific host address and name in a higher level corresponding to a group of die 322 (U04, U03, U02, U01, U00).

[0072] A partition generator running on device 510 may manage illegal configurations. The partition generator may abstract certain information, which may be things that can be derived from the information provided in command interface 530 and still follow certain rules for partitioning. For example, the partition generator may prevent the generation of partitions with overlapping hardware resources. This may be due to the partition generator being aware of all existing partitions on the hardware system. As another example, the partition generator may not allow IP reuse because it has built-in checks to avoid IP conflicts. As another example, there is no repeated information in the system specification mode, so it can be resilient to user input errors. The final system configuration is derived and is correct by construction.

[0073] In some embodiments, computing device 510 may partition the SoW. Figure 5CAn example of an SoW array and dies included in each SoW according to an embodiment disclosed herein is illustrated. For example, the SoWs are arranged in a 2×3 array (eg, six SoWs) and may be implemented in a system tray 100 of a cabinet 120. Figure 5C As shown, each SoW includes a 5×5 die array 320. In some embodiments, the computing device 510 may logically combine the arrays of each SoW. For example, the combined SoW may have an array of 15×10 dies. Figure 5C The number of arrays and each type of array illustrated in are provided merely as examples, and these numbers and types may be determined based on the specific application.

[0074] In various embodiments, for example, Figure 5C As shown, computing device 510 may provide command interface 550 to perform partitioning of the SoW. Figure 5D As shown, command interface 550 may define partitions of the SoW, such as partition 552 and partition 556. Figure 5D As shown, partition 552 provides partition start and end information, such as Figure 5C As shown in the partition 554 shown. Figure 5C As shown, partition 554 corresponds to Figure 5D The partition start and end information shown in the partition 556 of the computing device 510. In various embodiments, the computing device 510 provides specific operational parameters for each partition. The operational parameters may include, but are not limited to, power supply voltage (Vdd), clock frequency, clock, routing information, interface information, etc. In some embodiments, these operational parameters can be used to operate these partitions when booting the computing system. In some applications, the SoW of the partition can be used for debugging and testing purposes before being implemented in the computing system. For example, before the system tray 100 is installed in the cabinet 120, the partition 554 can be tested with various operational parameters.

[0075] In some embodiments, computing device 510 may generate a graphical representation of the die that represents the current operational state of the die. The operational state of the die may include, but is not limited to, a functional die (e.g., Figure 5E Functional die 560), non-functional die (e.g., Figure 5E Non-functional die 566) and partially functional die (e.g., Figure 5E560). For example, functional die 566 may represent die that are capable of performing computations such that these die can be used as part of a computing system to perform computing tasks. Non-functional die 566 may represent die that are incapable of performing computing tasks or system routing. Additionally, non-functional die 566 may represent die that have errors (e.g., functional errors) or are disabled. Partially functional die 570 may represent die that are capable of performing a subset of the functions of functional die 560. For example, in some applications, partially functional die 570 may perform signal routing functions without performing computing functions.

[0076] Figure 5E An example of a graphical representation of a 3×2 array of SoWs (eg, SoWs 0-5) is illustrated. Figure 5E The graphical representation in the FIGURE identifies different partitions with specific shading of each die in a particular partition. The graphical representation may be generated based on configuration information and other computing system information that defines the partition(s). The configuration information may include Figure 5B and / or Figure 5D Any suitable information represented in .

[0077] like Figure 5E As shown, each SoW may be identified by a specific address, such as a host Internet Protocol address 564 corresponding to each SoW. Computing device 510 may generate a graphical representation of the current operational status of each die. For example, Figure 5E As shown, the functional die 560 can be represented by a specific mark, color, etc. In addition, in this example, the non-functional die 566 can be represented by a unique mark, such as Figure 5E The X shown on the non-functional die 566 is indicated. In addition, the partially functional die 570 can be indicated by annotations, such as die 570, such as Figure 5E In some cases, a portion of the functional die may be used to route data between other dies rather than for computing functions.

[0078] In various applications, a user of a computing system (e.g., a system engineer, operator, manager, etc.) can partition the SoW based on these graphical representations. For example, after identifying the unavailable die 566, the computing device 510 can partition the SoW by using the command interface 550. For example, a partition input, such as partition start: [0, 0], partition end: [7, 4], can provide partition 562. In another example, a partition input, such as partition start: [0, 5], partition end: [4, 9], can provide partition 568. Therefore, these partitions 562, 568 can only include the available die 560. In addition, Figure 5EThe graphical representation shown in can facilitate the debugging, assembly of SoW or maintenance process of the computing system. Through the present disclosure, each die in the array of dies is represented in the form of [y coordinate, x coordinate]. For example, Figure 5C The die 592 shown in may be represented as [9, 0]. However, this representation is provided merely as an example, and any other suitable indexing may be used in accordance with any suitable principles and advantages disclosed herein.

[0079] The computing device 510 may also generate partitioned views of the SoW. These views may include details of the functionality of the nodes of the die. In some applications, the computing device 510 may generate partitioned views including details of individual dies. Fig. 5F The diagram shows Figure 5C 574. For example, computing device 510, via command interface 550 or other user input, can partition SoW, such as with a command instruction corresponding to partition 574, "Partition start: [1, 5], partition end: [2, 6]", as shown in FIG. Figure 5C Illustratively, after partitioning, computing device 510 may generate Fig. 5F Partitioned view shown. In some embodiments, computing device 510 may generate a query to receive performance metrics for each die. For example, the performance metrics of a die may include its availability, available bandwidth, power, voltage, current, temperature, etc. Upon receiving the performance metrics, the computing device may mark each die based on the received performance metrics. For example, computing device 510 may determine for each node of the die whether the performance metric is at or below its threshold. Alternatively or additionally, computing device 510 may determine whether there is a fault at any node of the die. Upon determining that the performance metric is at or below its threshold or that a fault exists, computing device 510 may draw each die with a mark, such as a color, pattern, or any similar visual representation. For example, Fig. 5F As shown, different colors or shading 576 are used to represent nodes of a die whose performance metric is at or below its threshold or has failed.

[0080] Fig. 5F The graphical representation shown can be used to determine the location of a fault in a computing system. In some embodiments, computing device 510 can generate Fig. 5F A graphical representation of the partition, useful for debugging errors within the partition. For example, Fig. 5F As shown, an error (eg, performance degradation or failure) is generated from interface portion 572 and propagates to other nodes on the same die and to other dies. The error can be identified by an engineer with knowledge of the computing system.

[0081] use Fig. 5FThe graphical representation shown, errors can be identified faster and / or more easily than by parsing the log file. Even if the log file is parsed for a known pattern, Fig. 5F A graphical representation of the is also useful for identifying one or more unknown failure patterns. Such a graphical representation can quickly track an order of magnitude of debugging and / or root cause analysis.

[0082] Fig. 5F The pattern in the graphical representation of may indicate that there is a fault at interface 572. Data may be rerouted around interface 572 to operate the associated die without error. In some applications, various error patterns of the SoW may be stored in a storage medium of computing device 510. These stored patterns may be used to determine a specific error associated with a specific pattern. For example, after determining a certain error pattern, computing device 510 may compare the determined error pattern with the stored error patterns to facilitate the debugging process. Although Fig. 5F An array of 2x2 dies is illustrated, but any suitable principles and advantages of the graphical representation may be applied to any other suitable array of dies or individual dies. In addition, computing device 510 may provide user interface functionality to zoom in or out of a particular SoW to show a detailed view of each die.

[0083] The partitions disclosed herein can be applied in a variety of useful ways. A dynamic partition generation scheme can be implemented, where application software can request partitions of various sizes / configurations at runtime, and the partition generation disclosed herein can implement this. A dynamic partition generation scheme for system-level testing (SLT) of computing tiles before deployment in a data center can be implemented. For example, each computing tile can be partitioned into overlapping 2×2 logical partitions that can be unit tested. The partition generator can be used to create surround partitions, for example, 2×2 die partitions for corner dies of the same SoW. This can be achieved in the partition generator by instantiating the same computing tile 4 times and then defining the partitions of the 2×2 dies for the corner die. Another aspect of the partition generator is that the partition generator can also use failed hardware annotations when working on SLT.

[0084] In various embodiments, computing device 510 can test SoWs and / or system trays before deploying them into a computing system. For example, before deploying a new SoW 582 into a computing system, the performance and connectivity of SoW 582 can be tested by leveraging the partitioning aspects of computing device 510. In some applications, the die (U00, U04, U40, and U44) of SoW 582 are used as interface die to communicate with neighboring SoWs around SoW 582. In these applications, computing device 510 can generate logical copies of SoW 582 to generate four instances of SoW 582, such as Figure 5G Then, computing device 510 may generate partition 584 of four corner dies including different instances of SoW 582. For example, after generating the replicated SoW, the array dimensions may be a 10×10 array, and the replicated SoW may be represented by a partition 584 corresponding to Figure 5G , such as "partition start: [4, 4] and partition end: [5, 5]". Partition 584 can provide interface die (U00, U04, U40, and U44) of SoW 582. Therefore, partition 584 can be tested and debugged before SoW 582 is deployed to a computing system. This is advantageous because the corner die of SoW 582 can be tested without connecting to other SoWs, and the connectivity of these corner die can be verified before connecting SoW 582 to other SoWs.

[0085] Figure 6 One embodiment of an architecture of a computing device 510 is depicted in accordance with some embodiments disclosed herein. Figure 6 The general architecture of the computing device 510 depicted in the figure may include an arrangement of computer hardware and software components, which can be used to implement various aspects of the present disclosure. As shown, the computing device 510 may include a processing unit 612, a network interface 614, a computer-readable medium driver 616, and an input / output device interface 618, all of which can communicate with each other through a communication bus. The processing unit 612 can be configured to provide computing resources to execute one or more instructions provided by the memory 620. As disclosed herein, the network interface 614 can be configured to interact with the computing system. The network interface 614 can provide various network interfaces, which can include any combination of wired and / or wireless networks, such as one or more direct communication channels, local area networks, wide area networks, personal area networks, and / or the Internet. The network can also be a specific type of data bus for transmitting data. According to one or more embodiments disclosed herein, a computer-readable medium driver 616 can provide a storage medium. For example, the computer-readable medium driver 616 can store various SoW configurations and die arrangements. In another example, the computer-readable medium drive 616 may be stored with various error patterns occurring in the SoW (e.g., dies included in the SoW), and any debugging methods and corrective actions applied to these various error patterns. The input / output device interface 618 may provide interfaces to various computing components, such as input components (e.g., keyboard and mouse) and output components (e.g., monitor).

[0086] Memory 620 may include computer program instructions executed by processing unit 612 to implement one or more embodiments. Memory 620 generally includes RAM, ROM, or other permanent or non-transitory memory. Memory 620 may store an operating system 624 that provides computer program instructions used by processing unit 612 in the general management and operation of computing device 510. Memory 620 may also include computer program instructions and other information for implementing various aspects of the present disclosure. For example, in one embodiment, memory 620 may include interface software 622 for communicating with other components.

[0087] The memory may include partition instructions 626. The partition instructions 626 may be used to partition the SoW (e.g., logical partitions). In some applications, the partition instructions 626 may be used to manage the configuration of the computing tiles 102. More specifically, by providing instructions via the partition instructions 626, the computing device 510 may manage the configuration by identifying each computing tile based on at least an identifier of the computing tile 102, a location of the computing tile 102, and configuration information of the computing tile 102. Figure 5B As described in , the command interface 530 may provide various fields to identify the configuration of the SoW array 310 and the configuration of the die 322 included in each SoW 312. In addition, the command interface 530 may include a SoW array configuration field 532, a qualification field 534, a SoW configuration field 536, and an address field 538. The SoW array configuration field 532 may provide the SoW array configuration. For example, Figure 5B As shown in field 532 of , the SoWs are arranged in an array (e.g., six SoWs defined as SoWs 0-5). This arrangement may correspond to the system tray 100 ( Figure 1 The definition field 534 may be used to define each SoW configuration information. For example, Figure 5B The definition fields 534 in the 534 include the name, location, IP address, and host address of each SoW. Therefore, each SoW can be defined using these field information. The SoW configuration field 536 can define the configuration information of each SoW. For example, the name is a SoW identification number that can be assigned to each SoW. However, the identification number is provided only as an example, and any other suitable type of identifier can be used according to any suitable principles and advantages disclosed herein. Figure 5B The location in this particular example of may be defined based on the cabinet 120. For example, SoW 0 is included in the system tray 100 of cabinet 120, and the location field may identify the cabinet 120 that includes SoW 0. The SoW configuration field 536 may also provide interface processing information for each SoW 322. For example, Figure 5BAs shown, the die 322 (U04, U03, U02, U01, U00) of SoW 0 is connected with NIP 204 (as shown in FIG. Figure 2 For example, Figure 2 As described in , host 202 can provide the host name of each corresponding SoW, and NIP 204 can provide the specific channel number to which each SoW die is connected. Address field 538 can also provide a specific host address and name in a higher level corresponding to a group of dies (U04, U03, U02, U01, U00). Figure 5B The fields shown in are described merely as examples, and more or fewer fields may be used based on the specific application.

[0088] In some embodiments, the computing device 510 may partition the SoW by utilizing the partition instruction 626 . Figure 5C An example of an SoW array and the dies included in each SoW is shown. For example, the SoWs are arranged in a 2×3 array (eg, six SoWs) and can be implemented in a system tray 100 of a cabinet 120. Figure 5C As shown, each SoW may include a 5×5 die array 320. In some embodiments, computing device 510 may provide instructions to logically combine each array of a SoW. For example, a combined SoW may have an array of 15×10 die. Figure 5C The number of arrays and each type of array shown in are provided merely as examples, and these numbers and types may be determined based on the specific application.

[0089] In various embodiments, partition instructions 626 may also be provided via command interface 550 to partition the SoW, for example, Figure 5C As shown. Figure 5D As shown, command interface 550 may define partitions of the SoW, such as partitions 552 and 556. Figure 5D As shown, partition 552 provides partition start and end information, such as Figure 5C As shown in the partition 554 shown. Figure 5C As shown, partition 554 corresponds to Figure 5DThe partition start and end information shown in the partition 556 of the computing device 510. In various embodiments, the computing device 510 provides specific operational parameters for each partition. The operational parameters may include, but are not limited to, power supply voltage (Vdd), clock frequency, clock, routing information, interface information, etc. In some embodiments, these operational parameters can be used to operate these partitions when booting the computing system. In some applications, the SoW of the partition can be used for debugging and testing purposes before being implemented in the computing system. For example, before the system tray 100 is installed in the cabinet 120, the partition 554 can be tested with various operational parameters.

[0090] The memory 620 may also include graphical representation instructions 628. By utilizing the graphical representation instructions 628, the computing device 510 may provide instructions to the processing unit 612 to generate a partitioned view of the SoW.

[0091] In some embodiments, the computing device 510 may execute graphical representation instructions to generate a graphical representation of a die representing the current operational state of the die. This may include accessing configuration information that defines a partition. Additional computing system information about the operational state and / or performance of the die may also be accessed. The operational state of the die may include, but is not limited to, a functional die, a non-functional die, and a partially functional die. For example, a functional die may represent a die that is capable of performing calculations, so that these die can be used as part of a computing system to perform computing tasks. A non-functional die may represent a die that is unable to perform a computing task, such as a die that does not meet specific specifications for performing a task or calculation. In addition, a non-functional die may represent a die with an error (e.g., a functional error) or a disabled die. A partially functional die may represent a die that is capable of performing a subset of the functions of a functional die, such as a specific function other than computing. For example, a specific function may include, but is not limited to, a routing function, an interface function, etc. As shown above Figure 5E As shown, each SoW may be identified by a specific address, such as a host Internet Protocol address 564 corresponding to each SoW. Computing device 510 may generate a graphical representation of the current operational status of each die. For example, Figure 5E As shown, the functional die 560 can be represented by a specific mark, color, etc. In addition, in this example, the non-functional die 566 can be represented by a unique mark, such as Figure 5E The partial functional die 566 is shown as shown. In addition, Figure 5E As shown, limited use dies may be indicated by a notation such as die 570 .

[0092] In various applications, users of the computing system (e.g., system engineers, operators, managers, etc.) can partition the SoW based on these graphical representations. For example, after identifying the unavailable die 566, the computing device 510 can partition the SoW by using the command interface 550. For example, a partition input, such as partition start: [0, 0], partition end: [7, 4], can provide a partition area 562. In another example, a partition input, such as partition start: [0, 5], partition end: [4, 9], can provide a partition area 568. Therefore, these partitions 562, 568 can only include the available die 560. In addition, Figure 5E The graphical representation shown in can facilitate the debugging, assembling SoW, or maintenance process of a computing system.

[0093] In some applications, processing unit 612 may execute instructions to generate a die-level partitioned view. Fig. 5F The diagram shows Figure 5C 574. For example, computing device 510 may provide command interface 550 and may partition the SoW (by executing partition instructions 626), such as with a partition corresponding to Figure 5C 5, 6]”. Illustratively, after partitioning, computing device 510 may execute graphical representation instructions 628 and may generate a command instruction for partition 574 as shown in FIG. Fig. 5F . In some embodiments, computing device 510 may generate a query to receive performance metrics for each die. For example, the performance metrics of a die may include its availability, available bandwidth, power, voltage, current, temperature, etc. Upon receiving the performance metrics, computing device 510 may mark each die based on the received performance metrics. For example, for each die, computing device 510 may determine whether the performance metric is at or below its threshold. Upon determining that the performance metric is at or below its threshold, computing device 510 may draw each die with a mark (such as a color, pattern, or any similar visual representation). For example, Fig. 5F As shown, die having a performance metric at or below its threshold are represented by a different color 576 .

[0094] Memory 620 may also include post-processing instructions 630. In some embodiments, processing unit 512 may execute post-processing instructions 630 to debug the die based on the generated partition view. In some embodiments, by executing post-processing instructions 630, computing device 510 may generate Fig. 5F A graphical representation of the partition, useful for debugging errors within the partition. For example, Fig. 5FAs shown, an error (eg, performance degradation or failure) is generated from interface portion 572 and propagates to other nodes on the same die and to other dies. The error can be identified by an engineer with knowledge of the computing system.

[0095] use Fig. 5F The graphical representation shown, errors can be identified faster and / or more easily than by parsing the log file. Even if the log file is parsed for a known pattern, Fig. 5F A graphical representation of the is also useful for identifying one or more unknown failure patterns. Such a graphical representation can quickly track an order of magnitude of debugging and / or root cause analysis.

[0096] Fig. 5F The pattern in the graphical representation of may indicate that there is a fault at interface 572. Data may be rerouted around interface 572 to operate the associated die without error. In some applications, various error patterns of the SoW may be stored in a storage medium of computing device 510. These stored patterns may be used to determine a specific error associated with a specific pattern. For example, after determining a certain error pattern, computing device 510 may compare the determined error pattern with the stored error patterns to facilitate the debugging process. Although Fig. 5F An array of 2x2 dies is illustrated, but any suitable principles and advantages of the graphical representation may be applied to any other suitable array of dies or individual dies. In addition, computing device 510 may provide user interface functionality to zoom in or out of a particular SoW to show a detailed view of each die.

[0097] In various embodiments, by executing post-processing instructions 630, computing device 510 can test the SoW and / or system tray before deploying it into the computing system. For example, before deploying a new SoW 582 into the computing system, the performance and connectivity of SoW 582 can be tested by utilizing the partitioning aspects of computing device 510. In some applications, the die (U00, U04, U40, and U44) of SoW 582 are used as interface die to communicate with neighboring SoWs around SoW 582. In these applications, computing device 510 can generate logical copies of SoW 582 to generate four instances of SoW 582, such as Figure 5G Then, computing device 510 may generate partition 584 of four corner dies including different instances of SoW 582. For example, after generating the replicated SoW, the array dimensions may be a 10×10 array, and the replicated SoW may be represented by a corresponding Figure 5G, such as "partition start: [4, 4] and partition end: [5, 5]". Partition 584 can provide interface die (U00, U04, U40, and U44) of SoW 582. Therefore, partition 584 can be tested and debugged before SoW 582 is deployed to a computing system. This is advantageous because the corner die of SoW 582 can be tested without connecting to other SoWs, and the connectivity of these corner die can be verified before connecting SoW 582 to other SoWs.

[0098] The computing system disclosed herein can be implemented in various processing systems. Such processing systems can be used and / or specially configured for high-performance computing and / or computationally intensive applications, such as neural network training, neural network reasoning, machine learning, artificial intelligence, complex simulations, etc. In some applications, the processing system can be used to perform neural network training. For example, such neural network training can generate data for an autonomous driving system of a vehicle (e.g., a car), other autonomous driving vehicle functions, or advanced driver assistance system (ADAS) functions.

[0099] Unless the context clearly requires otherwise, throughout the specification and claims, the words "comprise", "comprising", "include", "including", etc. should be understood to be inclusive, as opposed to exclusive or exhaustive; that is, in the sense of "including, but not limited to". The word "coupled" as generally used herein refers to two or more elements that can be directly connected or connected through one or more intermediate elements. Similarly, the word "connected" as generally used herein refers to two or more elements that can be directly connected or connected through one or more intermediate elements. In addition, when used in this application, the words "herein", "above", "below" and words of similar meaning shall refer to the entirety of this application and not to any particular part of this application. Where the context permits, words used in the above detailed description in the singular or plural may also include the plural or singular, respectively. The word "or" when referring to a list of two or more items covers all of the following interpretations of the word: any item in the list, all items in the list, and any combination of items in the list.

[0100] Furthermore, conditional language used herein, such as “can,” “could,” “might,” “may,” “eg,” “for example,” “such as,” etc., unless otherwise specifically stated or understood otherwise in the context of use, is generally intended to convey that some embodiments include, while other embodiments do not include, certain features, elements, and / or states. Thus, such conditional language is generally not intended to imply that one or more embodiments require the features, elements, and / or states in any way.

[0101] The foregoing has been described with reference to specific embodiments. However, the above illustrative discussion is not intended to be exhaustive or to limit the invention to the precise form described. In view of the above teachings, many modifications and variations are possible. Therefore, others skilled in the art will be able to best utilize these techniques and various embodiments with various modifications to suit a variety of uses.

[0102] Although the present disclosure and examples have been described with reference to the accompanying drawings, various changes and modifications will be apparent to those skilled in the art, and such changes and modifications should be understood to be included within the scope of the present disclosure.

Claims

1. A computing device for generating a graphical representation of a computing system, the computing device comprising: A computing processor and a memory storing computer executable instructions that, when executed by the computing processor, cause operations to be performed, the operations comprising: accessing configuration information identifying a partition of the computing system, wherein the computing system comprises an array of systems on wafers (SoWs), and each SoW of the array of SoWs comprises an array of die; and A graphical representation of at least a portion of the computing system is generated, wherein the graphical representation identifies the partition and individual dies of the partition. 2 . The computing device of claim 1 , wherein the graphical representation provides information associated with functionality of the individual dies of the partition. 3 . The computing device of claim 2 , wherein the information associated with the functionality of the partitioned individual dies indicates whether each of the individual dies is functionalized, partially functionalized, or non-functionalized. 4 . The computing device of claim 1 , wherein the configuration information defines a voltage supply level and a clock frequency for each of the partitions.

5. The computing device of claim 1, wherein the operations further comprise checking the configuration information for illegal configurations. The computing device of claim 1 , wherein the operations further comprise dynamically generating the partitions.

7. The computing device of claim 1, wherein the operations further comprise generating a second graphical representation of dies of one of the partitions, and the second graphical representation indicates errors on one or more nodes of a particular die of the partition.

8. The computing device of claim 1, further comprising a display configured to display the graphical representation.

9. A method of generating a graphical representation of a computing system, the method comprising: accessing configuration information identifying a partition of the computing system, wherein the configuration information is stored in a memory, wherein the computing system comprises an array of systems on wafers (SoWs), and each SoW of the array of SoWs comprises an array of die; as well as A graphical representation of at least a portion of the computing system is generated with a computing device, wherein the graphical representation identifies the partition and individual dies of the partition.

10. The method of claim 9, wherein the graphical representation provides information associated with functionality of the individual dies of the partition.

11. The method of claim 10, wherein the information associated with the functionality of the partitioned individual dies indicates whether each of the individual dies is functionalized, partially functionalized, or non-functionalized.

12. The method of claim 9, wherein the configuration information defines a voltage supply level and a clock frequency for each of the partitions.

13. The method according to claim 9, further comprising checking the configuration information for illegal configuration.

14. The method of claim 9, further comprising dynamically generating the partitions.

15. The method of claim 9, further comprising generating a second graphical representation of dies of one of the partitions, wherein the second graphical representation indicates errors on one or more nodes of a particular die of the partition.

16. The method of claim 9, further comprising displaying the graphical representation on a display.

17. A non-transitory computer-readable storage medium comprising instructions that, when executed by one or more processors, cause the method of claim 9 to be performed.