BACKGROUND OF THE INVENTION

Hardware and software interfaces can also be utilized to allow computers to work together to share computing resources in order to solve large and/or complex computational problems. For example, processing requirements for technical problems such as encryption, artificial intelligence, machine learning, big-data processing and analysis, scientific research, and other modern computing needs are difficult to accomplish using standard computing resources.

Recently, block-chain technology has been applied to utilized decentralized tracking and verification of enormous amounts of data such as transaction information, inventory management, and other big-data problems. A key aspect of block-chain technology is the need to perform complex hashing algorithms. Such algorithms are complex enough that a common computing system might never successfully complete a single block verification within the useful lifespan of the system. However, by distributing the processing and computational load of such block verification processing across many machines, the computations can be successfully completed.

Operating such a system—for example a distributed processing environment potentially thousands or even millions of computing nodes—is enormously complex and difficult, not to mention expensive. Because of this, there are very few large-scale computing resources capable of completing computationally complex problems—such as block verification—at large scale.

Further, aside from the expense of a single entity controlling and operating such a distributed system, the technical complexity of configuring, maintaining, operating such a system may be prohibitive. Accordingly, such activities have been limited to users/entities that have the funds, programming knowledge, and advanced skill set to configure specialized mining or compute hardware. In one example, most people lack the required skill set, including lacking proper understanding to complete the setup process involved in setting up wallets, registering on cryptocurrency exchanges, tuning their hardware for efficiency, etc., that would be necessary to effectively complete block-chain verification computations.

At the same time, and as discussed above, computational resources are generally widely available. Cell phones, desktop computers, laptop computers, tablets, and even smart appliances all have processing capabilities that go unutilized during much of the life. For example, a user's home computing system may sit unused for 8 hours every day while the user is at work. Similarly, a corporation's computing resources may sit idly for the 16 hours a day that are outside of normal business hours.

Despite the many needs for large-scale distribute computing, and the immense amount of underutilized processing resources, there is still an ongoing need and desire to provide new and improved computer interfaces for utilizing existing resources for completing computationally complex processing.

The subject matter claimed herein is not limited to embodiments that solve any disadvantages or that operate only in environments such as those described above. Rather, this background is only provided to illustrate one exemplary technology area where some embodiments described herein may be practiced.

BRIEF SUMMARY

Disclosed embodiments include new and improved computer interfaces for facilitating optimized distributed computing environments using individually controlled computing resources that are federated into ad-hoc computing node clusters.

This Summary is provided to introduce a selection of concepts in a simplified form that are further described below in the Detailed Description. This Summary is not intended to identify key features or essential features of the claimed subject matter, nor is it intended to be used as an aid in determining the scope of the claimed subject matter.

Additional features and advantages will be set forth in the description which follows, and in part will be obvious from the description, or may be learned by the practice of the teachings herein. Features and advantages of the invention may be realized and obtained by means of the instruments and combinations particularly pointed out in the appended claims. Features of the present invention will become more fully apparent from the following description and appended claims or may be learned by the practice of the invention as set forth hereinafter.

In one embodiment, a node management computing system is described for improving compute job distribution using federated computing nodes and includes identifying a plurality of independently controlled computing nodes and then transmitting a token to each of the plurality of independently controlled computing nodes. Notably, the token is configured such that each of the plurality of independently controlled nodes can be identified as being authorized to participate in a federated computing node cluster. Then, for each particular node within the federated computing node cluster, the system receives one or more metrics associated with the particular node and based on the received one or more metrics, assigns one or more compute jobs to the particular node. The assigned compute jobs are then assembled into a compute job data packet comprising the one or more compute jobs. The assembled compute job data packet is then transmitted to the particular node. The system receives an indication from the particular node that at least one of the assigned compute jobs has been completed.

