Search

US-12627574-B2 - System and method for managing computing devices

US12627574B2US 12627574 B2US12627574 B2US 12627574B2US-12627574-B2

Abstract

A method for managing a plurality of computing devices comprises: periodically collecting status information from the plurality of computing devices; providing a user interface including: a first control to select one or more of the plurality of computing devices; and a second control to select one of a plurality of operating modes, the plurality of operating modes including: a manual mode in which the one or more selected computing devices are operated according to user selected settings; and an intelligent mode in which the one or more selected computing devices are operated according to dynamic settings; and in response to one or more of the plurality of computing devices being selected with the first control and one of the plurality of operating modes being selected with the second control, applying the selected operating mode to the one or more selected computing devices.

Inventors

  • Ganesh Balakrishnan
  • Kristy-Leigh Minehan
  • Evan Adams
  • Gabrielle Gordon

Assignees

  • CORE SCIENTIFIC OPERATING COMPANY

Dates

Publication Date
20260512
Application Date
20220927

Claims (20)

  1. 1 . A method for managing a plurality of computing devices, the method comprising: periodically collecting status information from the plurality of computing devices; providing a user interface including: a first control to select one or more of the plurality of computing devices; and a second control to select one of a plurality of operating modes, the plurality of operating modes including: a manual mode in which the one or more selected computing devices are operated according to user selected settings; and an intelligent mode in which the one or more selected computing devices are operated according to dynamic settings; and in response to a requested change, the requested change including a selection of one of the plurality of operating modes with the second control for one or more computing devices selected with the first control, simulating the effects of the requested change, and based on the results of the simulation, applying the selected settings to the one or more selected computing devices; wherein interdependent settings are automatically enforced in the intelligent mode; wherein, in response to detecting that one or more user selected settings exceed a predetermined safe range, generating a warning in the manual mode; wherein the simulating includes modeling the requested change for the selected one or more computing devices and providing simulated results that indicate at least one of expected device damage or estimated reduction in remaining device lifespan.
  2. 2 . The method of claim 1 , wherein the plurality of operating modes further includes a semi-automated mode in which the one or more selective computing devices are operated according to recommended settings.
  3. 3 . The method of claim 2 , further comprising: obtaining performance data for the one or more selected computing devices; and in response to selection of the semi-automated mode, determining the recommended settings according to the performance data.
  4. 4 . The method of claim 2 , further comprising, in response to selection of the semi-automated mode: allowing manual adjustment of at least a first parameter of the one or more selected computing devices; and restricting adjustment of at least a second parameter of the one or more selected computing devices.
  5. 5 . The method of claim 1 , wherein the plurality of operating modes further includes a semi-automated mode; and the method further comprises: in response to selection of the semi-automated mode, displaying recommended settings and an additional control to apply the recommended settings to the one or more selected computing devices; operating the one or more selected computing devices according to the recommended settings when a user selects the semi-automated mode via the second control and applies the recommended settings via the additional control; and operating one or more selected computing devices according to existing settings when said user selects the semi-automated mode via the second control and does not apply the recommended settings via the additional control.
  6. 6 . The method of claim 1 , wherein the plurality of operating modes further includes an automated mode in which the one or more selected computing devices are operated via automatically applying recommended settings.
  7. 7 . The method of claim 6 , further comprising: obtaining performance data for the one or more selected computing devices; and in response to selection of the automated mode, determining the recommended settings according to the performance data.
  8. 8 . The method of claim 7 , further comprising, in response to selection of the automated mode: monitoring performance of the one or more selected computing devices to obtain additional performance data; determining new recommended settings according to the additional performance data; and automatically applying the new recommended settings to the one or more selected computing devices.
  9. 9 . The method of claim 8 , wherein: monitoring performance of the one or more selected computing devices includes detecting a degradation in performance; and the determination of the new recommended settings is initiated in response to detecting the degradation in performance.
  10. 10 . The method of claim 8 , further comprising generating a user notification when the new recommended settings are automatically applied.
  11. 11 . The method of claim 1 , further comprising, in response to selection of the manual mode, the selected settings include one or a combination of: chip frequency, chip voltage, and fan speed.
  12. 12 . The method of claim 1 , further comprising, in response to selection of the intelligent mode: collecting data related to the one or more selected computing devices; and dynamically changing one or more parameters of the dynamic settings based on the collected data to increase performance of the one or more selected computing devices.
  13. 13 . The method of claim 12 , wherein collecting data related to the one or more selected computing devices includes: collecting device data for each of the one or more selected computing devices; and collecting environmental data for each of the one or more selected computing devices.
  14. 14 . The method of claim 13 , wherein: the collected device data includes at least one of fan speed, chip temperature, chip health, chip voltage, hardware errors, hash rate, and share; and the collected environmental data includes at least one of temperature, humidity, barometric pressure, and dust level.
  15. 15 . The method of claim 12 , wherein dynamically changing one or more parameters of the dynamic settings includes applying machine learning to stored data related to the one or more selected computing devices and the collected data.
  16. 16 . The method of claim 12 , wherein dynamically changing one or more parameters of the dynamic settings includes modifying the dynamic settings to optimize at least one of hash rate, hash rate efficiency, and net financial return.
  17. 17 . A data center, comprising: a first computer having a processor and a memory; and a plurality of second computers in communication with the first computer via one or more networks, at least one second computer of the plurality of second computers disposed on a hash board; wherein the first computer: periodically reads and stores status information from the plurality of second computers; and provides a user interface including: a first control to select one or more of the plurality of second computers; and a second control to select one of a plurality of different operating modes, including a manual mode, a semi-automated mode, an automated mode, and an intelligent mode; and in response to a requested change, the requested change including a selection of one of the plurality of operating modes with the second control for one or more of the plurality of second computers selected with the first control, simulates the effects of the requested change, and based on the results of the simulation, applies selected settings to the selected one or more second computers; wherein dynamic settings that are dependent on a proper configuration of another dynamic setting are automatically enforced in the intelligent mode; wherein, in response to detecting that one or more user selected settings exceed a predetermined safe range, generating a warning in the manual mode; wherein the simulating includes modeling the requested change for the selected one or more of the plurality of second computers and providing simulated results that indicate at least one of expected device damage or estimated reduction in remaining device lifespan.
  18. 18 . The data center of claim 17 , wherein: applying the manual mode includes the first computer operating the selected one or more second computers according to settings selected by a user; applying the semi-automated mode, the automated mode, or the intelligent mode includes the first computer (a) obtaining performance data for the selected one or more second computers and (b) determining recommended settings according to the obtained performance data; applying the semi-automated mode includes displaying an additional control to the user to apply the recommended settings; applying the automated mode includes automatically applying the recommended settings; and applying the intelligent mode includes determining the recommended settings via applying machine learning to the obtained performance data.
  19. 19 . The data center of claim 18 , wherein the selected settings include one or more of chip frequency, chip voltage, and fan speed.
  20. 20 . The data center of claim 19 , wherein applying the intelligent mode further includes: obtaining parameters associated with the selected one or more second computers in addition to the obtained performance data, the parameters including one or a combination of humidity, dust level, and chip health; and determining the recommended settings according to the parameters and via applying machine learning to the obtained performance data.

Description

CROSS-REFERENCE TO RELATED APPLICATIONS This application is a continuation of U.S. patent application Ser. No. 16/707,904, filed Dec. 9, 2019, which claims priority to and the benefit of U.S. Provisional Patent Application Ser. No. 62/877,737, filed on Jul. 23, 2019, and titled “COMPUTING SYSTEM”, the contents of which are hereby incorporated by reference in their entireties as though fully set forth herein. TECHNICAL FIELD The present disclosure generally relates to the field of computing and, more particularly, to systems and methods for managing a plurality of different computing devices. BACKGROUND This background description is set forth below for the purpose of providing context only. Therefore, any aspect of this background description, to the extent that it does not otherwise qualify as prior art, is neither expressly nor impliedly admitted as prior art against the instant disclosure. Many cryptocurrencies (e.g., Bitcoin, Litecoin) are based on a technology called blockchain, in which transactions are combined into blocks. These blocks are stored with previous blocks of earlier transaction into a ledger (the “blockchain”) and rendered immutable (i.e., practically unmodifiable) by including a hash. The hash is a number that is calculated based on the blocks and that meets the blockchain's particular criteria. Once the block and hash are confirmed by the cryptocurrency network, they are added to the blockchain. The hashes can be used to verify whether any of the prior transactions or blocks on the blockchain have been changed or tampered with. This creates an immutable ledger of transactions and allows the cryptocurrency network to guard against someone trying to double spend a digital coin. Cryptocurrency networks generally consist of many participants that repeatedly attempt to be the first to calculate a hash meeting the blockchain network's requirements. They receive a reward (e.g., a coin reward or transaction fee reward) that motivates them to continue participating (mining). Many blockchain networks require computationally difficult problems to be solved as part of the hash calculation. The difficult problem requires a solution that is a piece of data which is difficult (costly, time-consuming) to produce but easy for others to verify and which satisfies certain requirements. This is often called “proof of work”. A proof of work (PoW) system (or protocol, or function) is a consensus mechanism. It deters denial of service attacks and other service abuses such as spam on a network by requiring some work from the service requester, usually meaning processing time by a computer. Participants in the network typically operate computers called mining rigs or miners. Because of the difficulty involved and the amount of computation required, the miners are typically configured with specialized components that improve the speed at which hashes or other calculations required for the blockchain network are performed. Examples of specialized components include application specific integrated circuits (ASICs), field programmable gate arrays (FPGA), graphics processing units (GPUs) and accelerated processing unit (APUs). Miners are often run for long periods of time at high frequencies that generate large amounts of heat. Even with cooling (e.g., high speed fans), the heat and constant operations can negatively impact the reliability and longevity of the components in the miner. ASIC miners for example often have large numbers of hashing chips (e.g., 100's) that are more likely to fail as temperatures rise. Many participants in blockchain networks operate large numbers (e.g., 100's, 1000's or more) of different miners (e.g., different generations of miners from one manufacturer or different manufacturers) concurrently. These large numbers of miners can be difficult to manage. Operations such as changing the operating frequencies, voltage levels, and fan speeds can require burdensome amounts of time, particularly when apply the changes to large numbers of devices. One reason for this is that current management solutions are limited in functionality. Many are only able to manage a particular model or brand of miner or device. Many are also difficult to use and require time consuming operations to apply changes to large numbers of devices at the same time. Further complicating matters is that correctly configuring settings on devices like miners for optimum performance is difficult. Determining optimum configurations traditionally involves expert hardware engineers with an advanced understanding of how mining machines are built and function. Manipulating setting is often performed by changing and updating the device's firmware. For at least these reasons, there is a desire for a solution to allow easy management of large numbers of devices such as miners. SUMMARY A system and method for easily managing a data center with many computing devices such as miners, including for example traditional CPU-based devices a