WO2007110987A1 - マルチプロセッサコンピュータおよびネットワークコンピューティングシステム - Google Patents

マルチプロセッサコンピュータおよびネットワークコンピューティングシステム Download PDF

Info

Publication number
WO2007110987A1
WO2007110987A1 PCT/JP2006/319678 JP2006319678W WO2007110987A1 WO 2007110987 A1 WO2007110987 A1 WO 2007110987A1 JP 2006319678 W JP2006319678 W JP 2006319678W WO 2007110987 A1 WO2007110987 A1 WO 2007110987A1
Authority
WO
WIPO (PCT)
Prior art keywords
resource
computer
network
multiprocessor
hardware
Prior art date
Application number
PCT/JP2006/319678
Other languages
English (en)
French (fr)
Inventor
Chisato Numaoka
Ken Kutaragi
Masayuki Chatani
Original Assignee
Sony Computer Entertainment Inc.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Computer Entertainment Inc. filed Critical Sony Computer Entertainment Inc.
Priority to US12/294,483 priority Critical patent/US8589551B2/en
Publication of WO2007110987A1 publication Critical patent/WO2007110987A1/ja

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load

Definitions

  • the present invention relates to a multiprocessor computer and a network computing system.
  • the present invention particularly relates to a technique of distributed processing by a plurality of computers on a network.
  • Grid computing is a method of constructing a virtual high-performance multiprocessing system by combining multiple computers with limited performance on a single unit via a network.
  • Grid computing users can achieve efficient computing using resources such as processors and memory provided by this virtual multiprocessing system.
  • the present inventor has made the present invention on the basis of the above problems, and an object thereof is to construct a mechanism for efficiently using hardware resources on the network. .
  • a multiprocessor computer includes a multiprocessor including a plurality of processors each having a local memory and operating independently, a computer on a network, And a network communication unit that transmits and receives data between them.
  • the multiprocessor receives and manages information on hardware resources that can be provided via the computer power network on the network, and manages when it receives a hardware resource utilization request
  • the resource manager that handles the provision of hardware resources receives and manages hardware resource usage requests from a first processor that operates in a state loaded in local memory and a computer on the network.
  • a second processor for operating a resource scheduler that allocates hardware resources provided by the intermediary for a request for use of a node resource in response to a node resource use request, while being loaded in local memory.
  • the “multiprocessor” may be a multiprocessor made into one chip.
  • the “processor” may operate independently without interrupt processing, and the “plurality of processors” may execute processing asynchronously with each other.
  • “Hardware resource” is the power that various hardware can conceive, such as V of multiple processors! /, And for computers with multiple multiprocessors, It may refer to any multiprocessor. Or it may be a part of a storage medium such as a memory or hard disk, a communication device such as wireless communication, or an external peripheral device.
  • the operation of the resource manager and the operation of the resource scheduler are distributed and executed by the separate processors that operate independently, so that each process is performed at high speed. And real-time performance and efficiency of distributed processing on the network can be improved.
  • Another embodiment of the present invention is also a multiprocessor computer.
  • This multiprocessor computer is coupled to a first multiprocessor including a plurality of processors each having a local memory and operating independently, and the first multiprocessor through a high-speed bus.
  • a first processor including a plurality of processors operating independently with local memory.
  • the first multiprocessor receives and manages information about hardware resources that can also provide computer power over the network, and manages when it receives a hardware resource utilization request. It includes a processor that operates a resource manager that handles the provision of hardware resources that are loaded into local memory.
  • the second multiprocessor receives and manages computer-powered hardware resource usage requests on the network, and locally allocates a resource scheduler that allocates hardware resources provided by resource manager mediation to hardware resource usage requests. Includes a processor that operates while loaded into memory.
  • the operations of the resource manager and the resource scheduler are distributed and executed by separate processors that operate independently, so that each process can be performed at high speed and distributed processing on the network. Real-time performance and efficiency can be improved.
  • the multiprocessor computer includes a multiprocessor including a plurality of processors each having a local memory and operating independently, and a network communication unit that transmits and receives data to and from a computer on a network.
  • the multiprocessor receives and manages the information of hardware resources that can be provided via the network, and the resource scheduler that operates on external computers on the network.
  • a processor that operates a resource manager that handles provision of hardware resources to be managed while being loaded in local memory is included.
  • the operation of the resource manager and the operation of the resource scheduler are distributed and executed by separate processors that operate independently, so that each process can be performed at high speed and distributed processing on the network. Real-time performance and efficiency can be improved.
  • the multiprocessor computer includes a multiprocessor including a plurality of processors each having a local memory and operating independently, and a network communication unit that transmits and receives data to and from a computer on a network.
  • Multiprocessors receive and manage computer resources on the network by receiving requests to use hardware resources, and use hardware resources provided by mediation by resource managers operating on external computers on the network. Includes a processor that runs a resource scheduler assigned to requests that is loaded into local memory.
  • the operation of the resource manager and the operation of the resource scheduler are distributed and executed by separate processors that operate independently, so that each process can be performed at high speed and distributed processing on the network. Real-time performance and efficiency can be improved.
  • Yet another aspect of the present invention is a network computing system.
  • This network computing system includes a plurality of computers connected to each other via a network, and each of the plurality of computers includes a plurality of processors each having a local memory and operating independently. Any processor in the multiprocessor receives hardware resource information that can be provided from a computer on the network via the network, manages it, and receives a hardware resource usage request Sometimes in a multiprocessor that includes a computer that operates a resource manager that is loaded into local memory, and a plurality of processors that each operate independently with local memory.
  • the processor resource assigning the hardware resources that is provided by the intermediary of a resource manager to manage the receiving computer Karaha one de wear resource use request of the network with respect to Nono over de wear resource use request
  • the computer that runs the resource scheduler loaded in the local memory, and when it becomes possible to provide hardware resources to other computers, sends the hardware resource information to the resource manager and other computers.
  • the resource manager operation and the resource scheduler operation are distributed and executed by separate processors that operate independently, so that each process can be performed at high speed, and distributed processing on the network. Real-time performance and efficiency can be improved.
  • Yet another embodiment of the present invention is a multiprocessor computer.
  • This multiprocessor computer includes a multiprocessor including a plurality of processors each having a local memory and operating independently, and a hardware that can be provided from a computer on the network via a network.
  • Manages hardware resource information and processes the provision of hardware resources Sends and receives data to and from other multiprocessor computers running resource managers, and receives hardware resource usage requests from computers on the network
  • a network that transmits and receives data to and from other multiprocessor computers on which a resource scheduler is allocated. It comprises a signal unit.
  • the multiprocessor can provide hardware resources to other multiprocessor computers, the multiprocessor sends the hardware resource information to the resource manager that runs on any multiprocessor computer on the network.
  • a processor that operates a resource management client that transmits a hardware resource use request to a resource scheduler that operates on any multiprocessor computer on the network when using a hardware resource of a multiprocessor computer .
  • the resource information indicating that the idle resource can be provided is transmitted to the resource manager, and conversely, the idle resource of another computer is assigned.
  • Resource scheduling in situations where it should be used Send a resource usage request to Yura.
  • the multiprocessor computer serving as the client the provision and use of resources can be switched as appropriate according to the resource utilization status.
  • the resource manager and the resource scheduler are distributed to different processors and operate independently in other computers on the network, so that resources can be provided quickly and efficiently for IJ.
  • FIG. 1 is a diagram showing an example of a basic configuration of a network computer using a one-chip multiprocessor.
  • FIG. 2 is a diagram showing an example of a network computing system in the present embodiment.
  • FIG. 3 is a diagram showing an example in which a resource manager and a resource scheduler operate on a server including two multiprocessors.
  • FIG. 4 is a diagram showing an example in which a resource manager and a resource scheduler operate in a server including two multiprocessors connected by a high-speed network or a high-speed bus.
  • FIG. 5 is a diagram showing an example in which a resource manager and a resource scheduler operate on sub-processors in each of two servers distributed on a network.
  • FIG. 6 A diagram showing a processing procedure in three processes of a resource scheduler, a resource manager, and a resource management client.
  • FIG. 7 is a diagram for explaining a mechanism by which a resource management client selects a resource manager according to a resource allocation record through an operation monitoring server.
  • FIG. 9 is a diagram showing processing procedures in three processes of a resource scheduler, a resource manager, and a resource management client in the second embodiment.
  • FIG. 10 is a diagram showing a configuration of a one-chip multiprocessor in a first modified example.
  • FIG. 11 is a diagram showing a configuration of a one-chip multiprocessor in a second modified example. Explanation of symbols
  • the network computing system in the present embodiment is configured by connecting a plurality of computers incorporating a plurality of processors to a network.
  • Real-time resource management in this embodiment is realized by cooperation of each computer. First, the basic configuration of each computer incorporating a plurality of processors is described, and then the entire system is described.
  • FIG. 1 shows an example of a basic configuration of a network computer using a one-chip multiprocessor.
  • Network computer 10 includes multiprocessor 20, RF processor 29, AD converter 28, bridge 19, network interface 18, non-volatile memory 21, DVD player 22, USB23, graphics card 25, main memory 17, antenna 31, It has a controller 24 and a monitor 27.
  • the multiprocessor 20 includes one main processor 100, a plurality of sub-processors 102, an I / O interface 104, and a memory controller 106, which are connected to the ring bus 108 so that each operates in parallel. Composed. Multiprocessor 20 in the present embodiment includes six processors as sub-processors 102. Each sub processor 102 is uniquely recognized on the ring bus 108 by an ID such as “SPU0” or “SPU1”, and which processor makes a request to which processor via the ring bus 108. To be able to identify!
  • the memory controller 106 is connected to the main memory 17 and mediates access to the main memory 17 by each sub-processor 102.
  • a power variation for explaining an example in which the main memory 17 is provided outside the multiprocessor 20 may be a configuration in which the main memory 17 is included in the multiprocessor 20.
  • the O interface 104 is connected to a bridge 19 for connection with various IZO devices, a graph status card 25, an RF processing unit 29 for processing wireless communication, and the like, and the main processor 100 and sub processor 102 control external devices. And mediate communication with external devices.
  • the network interface 18, the nonvolatile memory 21, the DVD driver 22, and the USB 23 are connected to the bridge 19.
  • the network interface 18 mediates communication with a network such as a home LAN or the Internet.
  • the USB 23 mediates connection with a peripheral device such as a keyboard via the controller 24.
  • the graphics card 25 includes a frame memory 26 and outputs an image signal to the monitor 27.
  • the RF processing unit 29 includes a down converter 30 and is connected to the IZO interface 104 via the AD conversion 28.
  • the RF processing unit 29 establishes wireless communication with the outside via the antenna 31.
  • the main processor 100 includes a processor core 110, an L1 cache 112, an L2 cache 114, and a sub memory controller 116.
  • the sub memory controller 116 includes a DMAC (Direct Memory Access Controller) 118.
  • an operating system hereinafter referred to as “OS” operates, and a plurality of sub processors 102 operate based on the basic processing of the OS.
  • Each of the plurality of sub processors 102 includes a processor core 120, a local memory 122, and a sub memory controller 126.
  • the sub memory controller 126 includes a DMAC 128. Since each of the sub-processors 102 has its own local memory 122, once the target program is loaded into the local memory 122, the target memory can be accessed without accessing the main memory 17 unless necessary. Can be continued.
  • the sub processor 102 since the sub processor 102 is designed not to interrupt processing due to an interrupt, it executes various processes, which will be described later, at high speed and uses and provides resources. Suitable for distributed processing in real time.
  • the sub processor 102 for example, a device driver or a part of the system program such as a part of the system program may be executed, or a dedicated OS that controls the entire sub processor 102 operates. Also good.
  • the main processor 100 and the sub processor 102 are configured by an instruction set architecture (ISA) having different instruction sets.
  • ISA instruction set architecture
  • the main processor 100 operates a program that manages only the use of resources included in the computer, whereas the sub processor 102 manages the use and provision of resources included in other computers on the network. The program works.
  • FIG. 2 shows an example of a network computing system in the present embodiment.
  • the network computing system 50 includes a server 41 and a sano 54 each including a multiprocessor 20, a high performance computer 52 including a plurality of multiprocessors 20 connected by a switching network 42, a personal computer 53 including a multiprocessor 20, a multiprocessor Home appliances 55 including 20 and personal computers 56 including processors other than the multiprocessor 20 are included in the form of being connected to the network 51.
  • the network 51 may be the Internet or a LAN such as a home network. Note that the configuration of the network combining system 50 in this figure is merely an example, and the hardware configuration and the number of units connected to the network 51 are arbitrary.
  • the multiprocessor 20 of the server 41 includes a plurality of sub-processors 102 and one main processor 100.
  • Each component included in the power processor is basically the same as each component included in the network computer 10 in FIG. The same.
  • each sub-processor 102 operates a process for executing the real-time resource management of the present embodiment. For example, a resource manager program runs on the first sub-processor 102, a resource scheduler program runs on the second sub-processor 102, and a resource management client program runs on the third sub-processor 102.
  • the resource manager program operates on one of the plurality of sub-processors 102 included in the server 41, and the resource scheduler program operates on one of the sub-processors 102 included in the server 54. May be.
  • Resource manager The management client may run on any computer included in the network computing system 50.
  • Clearing Knows 77 records the use and provision status of resources by each computer, and processes charge for the use.
  • the operation monitoring server 98 manages the performance and efficiency of allocation for resource usage requests. The operations of the resource manager, resource scheduler, and resource management client will be described in detail below, and then the operations of the tallying house 77 and the operation monitoring server 98 will be described in detail.
  • the resource manager in the present embodiment determines whether or not computing resources such as the multiprocessor 20 and the subprocessor 102 included in the multiprocessor 20 in any of the computers connected to the network 51 can be provided to other computers. It is a process operating on one sub-processor 102 for management. When any of the computing resources becomes available to other computers, the resource manager receives the computer power resource information having the available resources via the network 51.
  • the resource manager operates in cooperation with a resource scheduler described later.
  • the resource manager receives a resource use request from the resource scheduler, executes a process for allocating the resources specified in the request, and returns a response to the resource scheduler.
  • the resource manager divides the usage requests according to the specs of each computer and returns them to the resource scheduler.
  • the resource manager has a resource management table that classifies resources that can be provided by resource type. For example, the resource manager subtracts the value of the resource counter, which is the number of resources that can be allocated for each resource type, every time resource allocation is performed. This avoids allocating multiple resources on a specific computer at the same time or allocating resource resources on the same computer over and over, and places a heavy burden on a specific computer. Can be suppressed.
  • the resource manager can allocate resources in response to resource usage requests. If not, a response indicating that allocation is not possible is returned to the resource scheduler.
  • the resource manager maintains a manager management table that manages at least some resource managers that operate on sub-processors on the same or different servers.
  • the resource manager generates resource amount information indicating the amount of resources managed by the resource management table, and periodically exchanges resource amount information with other resource managers managed by the manager management table.
  • the resource manager refers to the manager management table, selects the resource manager that manages more available resources, and returns the identification information of the selected resource manager to the corresponding resource scheduler.
  • the resource scheduler in the present embodiment is a process that is executed while occupying one sub-processor.
  • the resource scheduler receives a resource use request from any of the computers connected to the network 51, it sends the use request to the resource manager asynchronously.
  • the resource scheduler waits for a resource to be allocated to the transmitted usage request, and after the resource is allocated by the resource manager, transfers the usage request to the computer that holds the allocated resource. If the computer that owns the resource is divided into multiple, the resource manager divides the usage request into multiple, and the resource scheduler transfers these divided usage requests to the corresponding computers.
  • the scheduling queue is preferably held in the local memory 122 in the sub processor 102 in which the resource scheduler operates! /, But may be held in the main memory 17.
  • any scheduling method known to those skilled in the art can be employed.
  • FIFO-type scheduling that processes use requests in the order of arrival may be employed.
  • information indicating that the usage request can be identified is sent to the computer that issued the usage request.
  • the resource manager can identify the identification information of another resource manager from the corresponding resource manager. If a resource request is received, the usage request may be sent asynchronously to the resource manager, and if a response to the usage request is received, the usage request may be sent to the computer holding the resource according to the assignment.
  • a method of processing a usage request based on priority may be adopted.
  • usage requests that include more resource constraints are processed preferentially.
  • usage requests with fewer resource constraints may be processed preferentially.
  • priority may be added to the usage request, and the processing order may be determined according to the priority. In this case, you may want to have a scheduling mailing queue according to the priority.
  • the resource management client in the present embodiment is a process that operates as a client on each computer included in the network computing system in the present embodiment.
  • Resource management clients have at least three roles, for example:
  • the resource management client can provide provided resource information indicating the content of the resource that can be provided. To the resource manager.
  • the resource management client manages multiple multiprocessors. For example, in the high performance computer 52 shown in FIG. 2, the resource management client is operated only by the multiprocessor connected to the network interface NIC, and the resources of all the multiprocessors connected to the switching network 42 are managed. Yo! /
  • the resource management client transmits a use request to one of the resource schedulers on the network 51.
  • the resource management client When the resource management client receives a usage request from another computer, the resource management client allocates the resource included in the multiprocessor 20 managed by itself to the computer that has transmitted the usage request.
  • a processor other than the multiprocessor 20 such as the personal computer 56 in FIG.
  • the built-in computer operates a simplified resource management client that omits the roles of (1) and (3) above, and issues a use request on the network 51 to which multiple computers incorporating the multiprocessor 20 are connected. By doing so, a computer with a built-in multiprocessor 20 is substituted.
  • FIGS. 3 to 5 show examples in which three processes of a resource manager, a resource scheduler, and a resource management client are arranged on one or more multiprocessor servers.
  • FIG. 3 shows an example in which the resource manager and the resource scheduler operate in the server 60 including one multiprocessor 20.
  • the resource manager 202 operates on the sub-processor 102 to which the ID of “SPU1” is assigned, and the ID of “SPU2” is assigned.
  • a resource scheduler 206 operates in the sub processor 102.
  • FIG. 4 shows an example in which a resource manager and a resource scheduler each operate in a server 62 including two multiprocessors 20 connected by a high-speed network or a high-speed bus.
  • two sub-processors 102 are selected so as to span two multiprocessors 20, and a resource manager 202 and a resource scheduler 206 operate in each.
  • the resource manager 202 operates in the sub processor 102 to which the ID of “SPU1” included in one multiprocessor 20 is assigned, and the subprocessor to which the ID of “SPU2” included in the other multiprocessor 20 is assigned.
  • the resource scheduler 206 operates.
  • the two multiprocessors 20 are connected by a high-speed bus or a high-speed network.
  • FIG. 5 shows an example in which the resource manager and the resource scheduler operate on the sub-processor 102 in each of the two servers 64 and 66 distributed on the network 51.
  • two sub-processors 102 are selected so as to span two servers 64 and 66, and a resource manager 202 and a resource scheduler 206 operate in each. That is, the resource manager 202 operates in the sub processor 102 to which the ID “SPU2” included in the multiprocessor 20 of one Sano 64 is assigned, and the “SPU3” included in the multiprocessor 20 of the other server 66. Sub-processor with ID In the server 102, the resource scheduler 206 operates.
  • FIG. 6 shows processing procedures in the three processes of the resource scheduler, the resource manager, and the resource management client.
  • a plurality of clearing nodes 77 may be included in the network 51.
  • the authentication of the resource management client 200 is executed when the resource management client 200 first accesses a predetermined clearing nose 77. In this authentication process, the resource management client 200 sends a certificate or resource management client ID for certifying that the software is properly created to the clearing node 77. If this certificate is successfully authenticated by Clearinghouse 77, an electronic signature is sent to the resource management client 200. When the authenticated resource management client 200 communicates with the clearinghouse 77, it sends a message with an electronic signature attached thereto.
  • the resource provider sets whether or not to provide part or all of the computer's resources to other computers through the provision setting interface 220.
  • the provided setting interface 220 may be configured integrally with the resource management client 200, or may be configured as software separated from the resource management client 200.
  • the offer setting interface 220 calculates an evaluation value of dividends to be paid when the provided resource is used by another computer, and displays it on the computer screen.
  • the resource provider confirms the displayed evaluation value and then
  • the resource provision amount such as the number of servers, the number of multiprocessors, the memory capacity, and the provision time is set through the provision setting interface 220.
  • the provision setting interface 220 of the resource management client 200a operating on the resource provider's computer network provides the provided resource information including the set resource provision contents, the computer identification information, and the provider's personal information.
  • the computer identification information is, for example, an IP address assigned to the computer in the network 51.
  • the provider's personal information includes, for example, the provider's name, contact information such as a telephone number and email address, information necessary to identify the provider, such as an account number and credit card number, and payment of usage fees to the provider. This is necessary information. Communication between the computer and Clearing Now 77 should be kept secure.
  • the clearing node and the mouse 77 write the information received from the provision setting interface 220 to the provider list 222 indicating the provider of the resource to be managed.
  • the user who wishes to use the resource inputs the setting for concluding the use contract with Clearing Now 77 through the use setting interface 224.
  • the usage setting interface 224 may be configured integrally with the resource management client 200 or may be configured as software separated from the resource management client 200. Those who wish to use the resource conclude the use contract with Clearing Knows 77 through the use setting interface 224 via the resource management client 200b operating on the computer.
  • As a usage contract it is necessary to charge the user's name, contact information such as phone number and e-mail address, account number, credit card number and other information necessary for identifying the user and the usage fee for the user.
  • Register the information in Clearinghouse 77 (S4) When such information is registered in the clearing node 77, the clearing node 77 sends an electronic signature for uniquely identifying and authenticating the resource user to the resource user's computer.
  • the resource management client 200a of the computer on which an available idle resource has occurred registers the idle resource with the selected resource manager 202.
  • Provided resource information is transmitted (S10).
  • the resource management client 200b of the computer that detects a resource shortage such as a shortage of sub-processors issues a use request to the selected resource scheduler 206 to request the use of an idle resource in another computer (S 12)
  • the usage request is put in the request queue 208 of the resource scheduler 206.
  • the resource management client 200b reads out the electronic signature of the storage area where the electronic signature of the resource user is stored, and transmits it to the resource scheduler 206 together with the usage request.
  • the request queue 208 is implemented in the form of a FIFO queue. Note that the resource scheduler 206 occupies the sub-processor 102 and can execute processing.
  • the request queue 208 may be in the local memory 122 in the sub-processor 102! Yo!
  • the resource scheduler 206 retrieves the head force use request from the request queue 208, and asynchronously transmits the use request to the corresponding resource manager 202 (S14). That is, the resource scheduler 206 does not wait for the response of the resource manager 202 in response to this usage request. If the allocated resource queue 210 is empty at this time, the next usage request is taken out from the request queue 208 and processed, and the allocated resource queue If 210 is not empty, go to S16. Note that the resource scheduler 206 occupies the sub-processor 102 and executes its processing. The resource allocation resource queue 210 may be in the local memory 122 in the sub-processor 102 or in the main memory 17. Good. The resource manager 202 adds the usage request received from the resource scheduler 206 to the request queue 212.
  • the resource manager 202 retrieves the usage request from the head force of the request queue 212, and manages and selects the appropriate resource for the idle resource power to be managed, and uses the resource allocation information indicating the result of the allocation. It returns a response to the resource scheduler 206 that is the source of the request (S16).
  • This resource allocation information is a plurality of usage request packets formed by dividing the original usage request, and each computer is assigned to the allocated resource. These plurality of usage request packets enter the allocation resource queue 210. Note that the resource manager 202 occupies the sub-processor 102 and executes the process.
  • One 212 may be in local memory 122 in sub-processor 102 or in main memory 17.
  • the resource scheduler 206 extracts the usage request packet from its head, and forwards the usage request packet to the resource management client 200a of the computer having the allocated idle resource. (S 18). In the computer that provides the resource that has received the use request packet, the resource management client 200a allocates the resource corresponding to the use request and executes the requested process.
  • the resource management client 200b transmits to the clearing nose 77 information that can identify the use request and the destination computer of the use request. To do.
  • Talia Ring House 77 executes a process of charging the usage fee to the user specified from the electronic signature of the resource user included in the usage request according to the amount of resources allocated in the usage request.
  • the personal information ability account number or credit card number of the resource provider specified by the identification information of the computer to which the use request is transmitted is taken out and assigned to the account specified by these information by the use request.
  • An instruction to pay a usage fee determined according to the amount of resources allocated is issued.
  • the amount of the usage fee paid to the provider of the resource used does not exceed the amount of the usage fee charged to the resource user! Set as / ⁇ .
  • FIG. 7 is a diagram for explaining a mechanism in which the resource management client 200 selects the resource manager 202 according to the resource allocation record through the operation monitoring server 98.
  • the operation monitoring server 98 receives the resource allocation record 230 at regular intervals from one or more resource managers 202 operating on a sub processor of the server connected to the network 51 (S50), and manages the resource allocation record 230.
  • the resource allocation performance 230 at regular intervals includes, for example, the number of usage requests received at regular intervals and the amount of resources successfully allocated at regular intervals.
  • computer A sends a resource allocation record 230 indicating that the number of usage requests within a certain period of time was 60
  • computer B The resource allocation record 230 indicating that the number of usage requests within a certain period of time was 150 times was sent, and the resource allocation record 230 indicating that the number of usage requests was 80 times within a certain period of time was sent from computer C 230 Will be sent.
  • the resource management client 200 receives the resource allocation record 230 of each computer from the operation monitoring server 98 (S52), and refers to the resource allocation record to select a resource manager with higher resource operation efficiency.
  • the resource provider receives a dividend for the usage fee according to the amount of the resource used, and receives a larger dividend if the idle resource provided for the use of others is used more. be able to. Therefore, select one of the resource managers 202 with a higher resource allocation record so that more dividends can be provided to the resource provider, and select the resource manager 202 according to the change in resource allocation record. Change over (S54).
  • the resource management client 200 may change the resource manager 202 automatically according to the resource allocation result, or may change based on an explicit instruction from the resource provider.
  • the resource management client 200 presents the resource provider with a list containing the IDs of available resource managers and their resource allocation performance 230, Receive explicit selection instructions from resource providers.
  • FIG. 8 is a diagram illustrating a mechanism in which the resource management client 200 selects the resource scheduler 206 according to the scheduling efficiency performance through the operation monitoring server 98.
  • the operation monitoring server 98 receives the schedule efficiency record 240 at regular intervals from one or more resource schedulers 206 operating in the sub-computer of the server connected to the network 51 (S60), and manages the schedule efficiency record 240. To do.
  • the schedule efficiency record 240 may be an average waiting time until a resource is allocated for a request for use in scheduling, or may be a request allocation success rate.
  • the resource management client 200 receives the schedule efficiency record 240 of each computer from the operation monitoring server 98 (S62), and refers to the schedule efficiency record 240 in order to select the resource scheduler 206 with higher schedule efficiency.
  • a resource user desires that resources be allocated more continuously. Therefore, in order to allocate resources more efficiently to resource users, select one of the resource schedulers 206 with higher V and schedule efficiency results, and change the resource scheduler 206 according to changes in the schedule efficiency results. Switch the selection (S6 4).
  • the resource management client 200 may automatically change the resource scheduler 206 according to the schedule efficiency record, or may change it based on an explicit instruction from the resource user.
  • the resource management client 200 presents the resource user with a list including the IDs of available resource schedulers and their schedule efficiency results 240, and then performs resource allocation. Receive explicit selection instructions from the service user.
  • This embodiment is different from the first embodiment in that the consideration for use is settled between the resource user and the provider by exchanging predetermined points with the resource.
  • points can be given to the resource provider, and other points can be used using the points.
  • Resource exchange can be realized.
  • “Points” here serve as a virtual currency when paying for the use of resources and can be converted into resource amounts.
  • the “resource amount” here refers not only to the amount of hardware resources such as the number of sub processors, memory capacity, peripheral devices' devices such as WiFi device drivers, but also to resource usage time such as WiFi device driver occupation time. A concept is also included.
  • FIG. 9 shows processing procedures in three processes of the resource scheduler, the resource manager, and the resource management client in the second embodiment.
  • differences from the first embodiment will be mainly described, and description of common points will be omitted.
  • the resource provider and the owner of the computer that will be the user can use it with Clearing Knows 77 by opening a point account for resource exchange through the account setting interface 226.
  • Account setting interface 226, use As information necessary for the contract, the computer identification information and the owner's personal information are transferred to the Talia Ring House 77 via the network 51.
  • the owner's personal information includes, for example, the name of the owner, contact information such as phone number and email address, identification information of the point account, etc., information necessary to identify the owner, and resource exchange points to the owner Information necessary for granting. Communication between the computer and Clearing Now 77 should be kept secure.
  • the clearing node and the user 77 write the information received from the resource setting interface to the provider list 222 indicating the provider of the resource to be managed.
  • Talia Ring House 77 sends an electronic signature to the computer that opened the point account to uniquely identify and authenticate the owner.
  • the clearinghouse 77 identifies the owner's personal information including the point account by electronic signature.
  • the point account may be placed in the clearinghouse 77 or may be placed on another server in the network 51. However, if it is located on a separate server from Clearing Now 77, it must be possible for Taliaring House 77 to have direct access to that server.
  • the resource provider sets whether or not to provide part or all of the computer's resources to other computers through the provision setting interface 220.
  • the provision setting interface 220 calculates the evaluation value of the resource exchange point that can be used later when the computer uses the resource of the other computer when the resource to be provided is used by another computer. Displayed on the computer screen.
  • the provided resource information in the present embodiment is transferred together with an electronic signature from the provision setting interface 220 to the clearing node 77 and written in the providing source list 222 in the clearing node 77.
  • the resource management client 200b operating on a computer that detects a shortage of resources such as a shortage of sub-processors confirms whether or not the point account has sufficient power for exchanging with the shortage resources. On top of that, if you had enough points If so, a usage request is transmitted to the resource scheduler 206. When transmitting the usage request, the resource management client 200b reads the electronic signature with a predetermined storage area capability, and transmits it to the resource scheduler 206 together with the usage request.
  • the resource management client 200b transmits a usage request and information that can identify the destination computer of the usage request to the clearing nose 77. To do.
  • Talia Ring House 77 identifies the user from the electronic signature included in the use request according to the amount of resources allocated in the use request, and calculates the points from the user's point account. Pull.
  • the personal information ability of the resource provider identified by the identification information of the destination computer of the usage request is extracted, and the identification information of the point account is taken out and determined for the point account according to the amount of resources allocated by the usage request.
  • the resource exchange point added to the provider of the used resource is set so as not to exceed the resource exchange point from which the resource user power is also subtracted.
  • the multiprocessor configured asymmetrically is exemplified as the multiprocessor 20 installed in the network computer 10.
  • a configuration in which a symmetric multiprocessor is mounted on the network computer 10 may be employed.
  • FIG. 10 shows a configuration of the one-chip multiprocessor in the first modification.
  • the multiprocessor 300 shown in this figure is mounted on the network computer 10 instead of the multiprocessor 20 in FIG.
  • the multiprocessor 300 includes a first processor 302, a second processor 304, a first L1 cache 306, a second L1 cache 308, a first L2 cache 310, a second L2 cache 312, and a memory controller 314.
  • the first processor 302, the first L1 cache 306, the first L2 cache 310, and the memory controller 314 are connected to each other. It operates as a processor unit in place of the main processor 100 or the sub processor 102 in FIG.
  • the second processor 304, the second L1 cache 308, the second L2 cache 312 and the memory controller 314 are also connected to each other and operate as a processor unit in place of the main processor 100 or the sub processor 102 in FIG.
  • only one memory controller 314 is mounted on the multiprocessor 300 and is shared by the first processor 302 unit and the second processor 304 unit.
  • the first processor 302 and the second processor 304 are connected to each other!
  • the first processor 302, the first L1 cache 306, the first L2 cache 310, the second processor 304, the second L1 cache 308, and the second L2 cache 312 are connected via the memory controller 314. It is constructed symmetrically. Of the first processor 302 and the second processor 304, one processor may operate in a main and sub relationship in which a task is assigned to the other processor.
  • FIG. 11 shows a configuration of a one-chip multiprocessor in the second modification.
  • the multiprocessor 320 shown in this figure is also installed in the network computer 10 instead of the multiprocessor 20 in FIG.
  • the multiprocessor 320 includes a first processor 322, a second processor 324, a first L1 cache 326, a second L1 cache 328, an L2 cache 330, and a memory controller 332.
  • the first processor 322, the first L1 cache 326, the L2 cache 330, and the memory controller 332 are connected to each other and operate as a processor unit that replaces the main processor 100 or the sub processor 102 in FIG.
  • the second processor 324, the second L1 cache 328, the L2 cache 330, and the memory controller 332 are also connected to operate as a processor unit in place of the main processor 100 or the sub processor 102 in FIG.
  • only one L2 cache 330 and one memory controller 332 are installed in the multiprocessor 320, and the L2 cache 330 and the memory controller 332 are shared by the first processor 322 unit and the second processor 324 unit.
  • the first processor 322 and the second processor 324 are connected to each other.
  • the first processor 322, the first L1 cache 326, the second processor 324, the second L1 cache 328, the force L2 cache 330, and the memory controller 332 are configured symmetrically.
  • a configuration exemplifying a configuration having two processors as a symmetric multiprocessor may be a configuration having a larger number of processors, for example, four or more processors. ,.
  • a system capable of efficiently using hardware resources on the network can be constructed.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Multi Processors (AREA)

Abstract

 ネットワーク上の分散処理においてリソース管理の向上やタスクスケジューリングの高効率化は避けて通れない課題となりつつある。  マルチプロセッサコンピュータにおいて、マルチプロセッサ20に含まれる一つのサブプロセッサ102は、ネットワーク上のコンピュータからネットワークを介して提供されることが可能となっているリソースの情報を受信して管理するとともに、リソース利用要求を受けたときは管理するリソースの提供を処理するリソースマネージャを、ローカルメモリ122にロードされた状態で動作させる。他のサブプロセッサ102は、ネットワーク上のコンピュータからリソース利用要求を受信して管理するとともに、リソースマネージャの仲介によって提供されるリソースをリソース利用要求に対して割り当てるリソーススケジューラを、ローカルメモリ122にロードされた状態で動作させる。

Description

明 細 書
マルチプロセッサコンピュータおよびネットワークコンピューティングシステ ム
技術分野
[0001] この発明は、マルチプロセッサコンピュータおよびネットワークコンピューティングシ ステムに関する。この発明は特に、ネットワーク上の複数のコンピュータによる分散処 理の技術に関する。
背景技術
[0002] 分散コンピューティングの一形態として、グリッドコンピューティングと呼ばれる手法 が近年よく利用される。グリッドコンピューティングは、 1台では性能の限られたコンビ ユータを、ネットワークを介して複数結合することにより、仮想的な高性能マルチプロ セッシングシステムを構築する方法である。グリッドコンピューティングの利用者は、こ の仮想的なマルチプロセッシングシステムの提供するプロセッサやメモリといったリソ ースを使って効率的なコンピューティングを実現できる。
[0003] グリッドコンピューティングにおいては、基本的に異機種 PCを結合することが頻繁 に行われる。このため、一般的には、それぞれのコンピュータに対してタスク(「ジョブ」 または「プロセス」とも ヽぅ)を割り当てるためのインタフェースを用意し、このインタフエ ースを介して、各コンピュータのリソースを割り当てることになる。
発明の開示
発明が解決しょうとする課題
[0004] ここで、リソースに対するタスクの割り当て頻度が比較的低い場合にはタスクスケジ ユーリングの問題は少ない。この場合、複数のコンピュータに対していつたんタスクが 割り当てられると、各タスクが終了するまでプロセッサをほぼ占有できるからである。
[0005] しかしながら、各プロセッサの性能が比較的高ぐ一つのプロセッサで一つのタスク の実行に要する時間が比較的短いような場合、ネットワーク中に分散されたリソース の管理やタスクスケジューリングの効率がシステムの全体性能に与える影響は大きい 。実際、近年のワンチップマルチプロセッサは従来の汎用プロセッサに比較して飛躍 的に性能が向上して 、るため、リソース管理の向上やタスクスケジューリングの高効 率ィ匕は避けて通れな ヽ課題となりつつある。
[0006] 本発明者は以上の課題に基づき本発明をなしたもので、その目的は、ネットワーク 上のハードウェアリソースを効率よく利用できるようにするための仕^ aみを構築する点 にある。
課題を解決するための手段
[0007] 上記課題を解決するために、本発明のある態様のマルチプロセッサコンピュータは 、それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサと、ネットワーク上のコンピュータとの間でデータを送受信するネットヮー ク通信部と、を備える。マルチプロセッサは、ネットワーク上のコンピュータ力 ネットヮ ークを介して提供されることが可能となっているハードウェアリソースの情報を受信し て管理するとともに、ハードウェアリソース利用要求を受けたときは管理するハードウ エアリソースの提供を処理するリソースマネージャを、ローカルメモリにロードされた状 態で動作させる第 1のプロセッサと、ネットワーク上のコンピュータからハードウェアリソ ース利用要求を受信して管理するとともに、リソースマネージャの仲介によって提供さ れるハードウェアリソースをノヽードウエアリソース利用要求に対して割り当てるリソース スケジューラを、ローカルメモリにロードされた状態で動作させる第 2のプロセッサと、 を含む。
[0008] ここで「マルチプロセッサ」は、ワンチップ化されたマルチプロセッサであってもよ 、。
「プロセッサ」は、割り込み処理なしに独立して動作するものであってもよぐ「複数の プロセッサ」は互いに非同期で処理を実行するものであってもよい。「ハードウェアリソ ース」としては様々なハードウェアが考え得る力 たとえば複数のプロセッサのうちの V、ずれかであってもよ!/、し、複数のマルチプロセッサを備えるコンピュータにお 、ては そのいずれかのマルチプロセッサを指してもよい。あるいは、メモリやハードディスクな どの記憶媒体の一部や、無線通信などの通信デバイス、外部周辺機器などであって ちょい。
[0009] この態様によると、リソースマネージャの動作とリソーススケジューラの動作を独立し て動作する別個のプロセッサに分散して実行させるので、それぞれの処理を高速ィ匕 でき、ネットワーク上の分散処理のリアルタイム性や効率を向上させることができる。
[0010] 本発明の別の態様もまた、マルチプロセッサコンピュータである。このマルチプロセ ッサコンピュータは、それぞれがローカルメモリを有して独立に動作する複数のプロセ ッサを含んだ第 1のマルチプロセッサと、第 1のマルチプロセッサと高速バスで結合さ れ、それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだ第
2のマルチプロセッサと、ネットワーク上のコンピュータとの間でデータを送受信するネ ットワーク通信部と、を備える。第 1マルチプロセッサは、ネットワーク上のコンピュータ 力もネットワークを介して提供されることが可能となっているハードウェアリソースの情 報を受信して管理するとともに、ハードウェアリソース利用要求を受けたときは管理す るハードウェアリソースの提供を処理するリソースマネージャを、ローカルメモリにロー ドされた状態で動作させるプロセッサを含む。第 2マルチプロセッサは、ネットワーク 上のコンピュータ力 ハードウェアリソース利用要求を受信して管理するとともに、リソ ースマネージャの仲介によって提供されるハードウェアリソースをハードウェアリソース 利用要求に対して割り当てるリソーススケジューラを、ローカルメモリにロードされた状 態で動作させるプロセッサを含む。
[0011] この態様においても、リソースマネージャの動作とリソーススケジューラの動作を独 立して動作する別個のプロセッサに分散して実行させるので、それぞれの処理を高 速ィ匕でき、ネットワーク上の分散処理のリアルタイム性や効率を向上させることができ る。
[0012] 本発明のさらに別の態様もまた、マルチプロセッサコンピュータである。このマルチ プロセッサコンピュータは、それぞれがローカルメモリを有して独立に動作する複数の プロセッサを含んだマルチプロセッサと、ネットワーク上のコンピュータとの間でデータ を送受信するネットワーク通信部と、を備える。マルチプロセッサは、ネットワーク上の コンピュータ力もネットワークを介して提供されることが可能となっているハードウェアリ ソースの情報を受信して管理するとともに、ネットワーク上の外部のコンピュータで動 作するリソーススケジューラ力 ハードウェアリソース利用要求を受けたときは管理す るハードウェアリソースの提供を処理するリソースマネージャを、ローカルメモリにロー ドされた状態で動作させるプロセッサを含む。 [0013] この態様においても、リソースマネージャの動作とリソーススケジューラの動作を独 立して動作する別個のプロセッサに分散して実行させるので、それぞれの処理を高 速ィ匕でき、ネットワーク上の分散処理のリアルタイム性や効率を向上させることができ る。
[0014] 本発明のさらに別の態様もまた、マルチプロセッサコンピュータである。このマルチ プロセッサコンピュータは、それぞれがローカルメモリを有して独立に動作する複数の プロセッサを含んだマルチプロセッサと、ネットワーク上のコンピュータとの間でデータ を送受信するネットワーク通信部と、を備える。マルチプロセッサは、ネットワーク上の コンピュータ力もハードウェアリソース利用要求を受信して管理するとともに、ネットヮ ーク上の外部のコンピュータで動作するリソースマネージャによる仲介によって提供さ れるハードウェアリソースをノヽードウエアリソース利用要求に対して割り当てるリソース スケジューラを、ローカルメモリにロードされた状態で動作させるプロセッサを含む。
[0015] この態様においても、リソースマネージャの動作とリソーススケジューラの動作を独 立して動作する別個のプロセッサに分散して実行させるので、それぞれの処理を高 速ィ匕でき、ネットワーク上の分散処理のリアルタイム性や効率を向上させることができ る。
[0016] 本発明のさらに別の態様は、ネットワークコンピューティングシステムである。このネ ットワークコンピューティングシステムは、相互にネットワークで接続された複数のコン ピュータを含むシステムであって、複数のコンピュータは、それぞれがローカルメモリ を有して独立に動作する複数のプロセッサを含んだマルチプロセッサにおけるいず れかのプロセッサにより、ネットワーク上のコンピュータからネットワークを介して提供さ れることが可能となっているハードウェアリソースの情報を受信して管理してハードウ エアリソース利用要求を受けたときは管理するハードウェアリソースの提供を処理する リソースマネージャをローカルメモリにロードされた状態で動作させるコンピュータと、 それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマルチ プロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータからハ 一ドウエアリソース利用要求を受信して管理してリソースマネージャの仲介によって提 供されるハードウェアリソースをノヽードウエアリソース利用要求に対して割り当てるリソ ーススケジューラをローカルメモリにロードされた状態で動作させるコンピュータと、他 のコンピュータへハードウェアリソースの提供が可能となったときにハードウェアリソー スの情報をリソースマネージャに送信するとともに、他のコンピュータのハードウェアリ ソースを利用する場合にはハードウェアリソースの利用要求をリソーススケジューラに 送信するクライアントを動作させるコンピュータと、を含む。
[0017] この態様においても、リソースマネージャの動作とリソーススケジューラの動作を独 立して動作する別個のプロセッサに分散して実行させるので、それぞれの処理を高 速ィ匕でき、ネットワーク上の分散処理のリアルタイム性や効率を向上させることができ る。
[0018] 本発明のさらに別の態様は、マルチプロセッサコンピュータである。このマルチプロ セッサコンピュータは、それぞれがローカルメモリを有して独立に動作する複数のプロ セッサを含んだマルチプロセッサと、ネットワーク上のコンピュータからネットワークを 介して提供されることが可能となっているハードウェアリソースの情報を管理してハー ドウエアリソースの提供を処理するリソースマネージャが動作する他のマルチプロセッ サコンピュータとの間でデータを送受信するとともに、ネットワーク上のコンピュータか らハードウェアリソース利用要求を受信してリソースマネージャの仲介によって提供さ れるハードウェアリソースをノヽードウエアリソース利用要求に対して割り当てるリソース スケジューラが動作する他のマルチプロセッサコンピュータとの間でデータを送受信 するネットワーク通信部と、を備える。マルチプロセッサは、他のマルチプロセッサコン ピュータへハードウェアリソースの提供が可能となったときにハードウェアリソースの情 報をネットワーク上のいずれかのマルチプロセッサコンピュータで動作するリソースマ ネージャに送信するとともに、他のマルチプロセッサコンピュータのハードウェアリソー スを利用する場合にはハードウェアリソースの利用要求をネットワーク上のいずれか のマルチプロセッサコンピュータで動作するリソーススケジューラに送信するリソース マネージメントクライアントが動作するプロセッサと、を備える。
[0019] この態様によれば、マルチプロセッサコンピュータにおいて遊休リソースが生じたと きにはリソースマネージャへ遊休リソースの提供が可能であることを示すリソース情報 を送信し、逆に他のコンピュータの遊休リソースを利用すべき場面ではリソーススケジ ユーラへリソースの利用要求を送信する。これにより、クライアントとなるマルチプロセ ッサコンピュータにおいて、リソースの利用状況に応じてリソースの提供と利用を適宜 切り替えることができる。この場合でも、ネットワーク上の他のコンピュータにおいてリソ ースマネージャとリソーススケジューラとがそれぞれ異なるプロセッサに分散されて独 立して動作するので、迅速に効率よくリソースを提供し、禾 IJ用することができる。
[0020] なお、以上の構成要素の任意の組合せや、本発明の構成要素や表現を方法、装 置、システム、コンピュータプログラム、コンピュータプログラムを格納した記録媒体、 データ構造などの間で相互に置換したものもまた、本発明の態様として有効である。 発明の効果
[0021] 本発明によれば、ネットワーク上のハードウェアリソースを効率よく利用できるシステ ムを構築することができる。 図面の簡単な説明
[0022] [図 1]ワンチップマルチプロセッサを利用したネットワークコンピュータの基本構成の 一例を示す図である。
[図 2]本実施の形態におけるネットワークコンピューティングシステムの一例を示す図 である。
[図 3]—つのマルチプロセッサを含むサーバにぉ 、て、リソースマネージャとリソース スケジューラがそれぞれ動作する例を示す図である。
[図 4]高速ネットワークまたは高速バスで結合された二つのマルチプロセッサを含む サーバにおいて、リソースマネージャとリソーススケジューラがそれぞれ動作する例を 示す図である。
[図 5]ネットワーク上に分散された二つのサーバのそれぞれにおけるサブプロセッサ 上で、リソースマネージャとリソーススケジューラが動作する例を示す図である。
[図 6]リソーススケジューラ、リソースマネージャ、リソースマネージメントクライアントの 3 つのプロセスにおける処理手順を示す図である。
[図 7]運用監視サーバの仲介によりリソースマネージメントクライアントがリソース割当 実績に応じてリソースマネージャを選択する仕組みを説明する図である。
[図 8]運用監視サーバの仲介によりリソースマネージメントクライアントがスケジユーリン グ効率実績に応じてリソースマネージャを選択する仕組みを説明する図である。
[図 9]第 2の実施の形態におけるリソーススケジューラ、リソースマネージャ、リソースマ ネージメントクライアントの 3つのプロセスにおける処理手順を示す図である。
[図 10]第 1の変形例におけるワンチップマルチプロセッサの構成を示す図である。
[図 11]第 2の変形例におけるワンチップマルチプロセッサの構成を示す図である。 符号の説明
[0023] 20 マルチプロセッサ、 41 サーバ、 50 ネットワークコンピューティングシステ ム、 51 ネットワーク、 54 サーバ、 60 サーバ、 62 サーバ、 64 サーバ、 66 サーバ、 102 サブプロセッサ、 122 ロー力ノレメモリ、 202 リソースマネー ジャ、 206 リソーススケジューラ。
発明を実施するための最良の形態
[0024] (第 1の実施の形態)
本実施の形態におけるネットワークコンピューティングシステムは、複数のプロセッ サを内蔵した複数のコンピュータがネットワークに接続されて構成される。各コンビュ ータによる協働により本実施の形態におけるリアルタイムリソースマネージメントが実 現される。まず、複数のプロセッサを内蔵した各コンピュータの基本構成を説明して から、システム全体を説明する。
[0025] 図 1は、ワンチップマルチプロセッサを利用したネットワークコンピュータの基本構成 の一例を示す。ネットワークコンピュータ 10は、マルチプロセッサ 20、 RF処理部 29、 AD変^^ 28、ブリッジ 19、ネットワークインタフェース 18、不揮発性メモリ 21、 DVD ドライノく 22、 USB23、グラフィックスカード 25、メインメモリ 17、アンテナ 31、コント口 ーラ 24、モニタ 27を備える。
[0026] マルチプロセッサ 20は、一つのメインプロセッサ 100、複数のサブプロセッサ 102、 I/Oインタフェース 104、メモリコントローラ 106を備え、これらがリングバス 108に接 続されてそれぞれが並列的に動作するよう構成される。本実施の形態におけるマル チプロセッサ 20は、サブプロセッサ 102として 6個のプロセッサを含む。各サブプロセ ッサ 102は、たとえば「SPU0」や「SPU1」といった IDによってリングバス 108上で一 意に認識され、どのプロセッサがどのプロセッサにリングバス 108を経由してリクエスト を出して!/、るかを特定できるようにされて!、る。
[0027] メモリコントローラ 106は、メインメモリ 17に接続されるとともに、各サブプロセッサ 10 2によるメインメモリ 17へのアクセスを仲介する。なお、本実施の形態においては、メ インメモリ 17がマルチプロセッサ 20の外部に設けられる例を説明する力 変形例とし てはメインメモリ 17がマルチプロセッサ 20の内部に含まれる構成であってもよ 、。 \/ Oインタフェース 104は、各種 IZOデバイスと接続するためのブリッジ 19、グラフイツ タスカード 25、ワイヤレス通信を処理する RF処理部 29などが接続され、メインプロセ ッサ 100やサブプロセッサ 102による外部装置の制御や外部装置との通信を仲介す る。
[0028] ブリッジ 19には、ネットワークインタフェース 18、不揮発性メモリ 21、 DVDドライバ 2 2、 USB23が接続される。ネットワークインタフェース 18は、家庭内 LANやインター ネットなどのネットワークとの通信を仲介する。 USB23は、コントローラ 24を介してキ 一ボードなどの周辺機器との接続を仲介する。グラフィックスカード 25は、フレームメ モリ 26を含み、モニタ 27へ画像信号を出力する。 RF処理部 29は、ダウンコンバータ 30を含むとともに、 AD変翻 28を介して IZOインタフェース 104に接続される。 RF 処理部 29は、アンテナ 31を介して外部とのワイヤレス通信を確立する。
[0029] メインプロセッサ 100は、プロセッサコア 110、 L1キャッシュ 112、 L2キャッシュ 114 、サブメモリコントローラ 116を含む。サブメモリコントローラ 116は、 DMAC (Direct M emory Access Controller) 118を内蔵する。メインプロセッサ 100においてはォペレ 一ティングシステム(以下、「OS」という。)が動作し、その OSの基本処理に基づいて 複数のサブプロセッサ 102が動作する。
[0030] 複数のサブプロセッサ 102は、それぞれプロセッサコア 120、ローカルメモリ 122、 サブメモリコントローラ 126を含む。サブメモリコントローラ 126は、 DMAC128を内蔵 する。複数のサブプロセッサ 102は、それぞれ固有のローカルメモリ 122を有するた め、 目的のプログラムがローカルメモリ 122にいつたんロードされれば、それ以降は必 要のない限りメインメモリ 17にアクセスしなくとも目的の処理を継続することができる。 また、サブプロセッサ 102は、割り込みによる処理の中断が発生しない設計となって いるため、後述する各種プロセスを高速で実行し、リソースの利用と提供をネットヮー ク上でリアルタイムに分散処理するのに適している。
[0031] サブプロセッサ 102では、たとえばデバイスドライバやシステムプログラムの一部な ど、 OSの一部をなすプログラムが実行されてもよいし、サブプロセッサ 102全体を制 御する専用の OSが動作してもよい。メインプロセッサ 100とサブプロセッサ 102は、そ れぞれ異なる命令セットを有する命令セットアーキテクチャ (ISA)にて構成される。メ インプロセッサ 100では、そのコンピュータに含まれるリソースの使用のみを管理する プログラムが動作するのに対し、サブプロセッサ 102では、ネットワーク上の他のコン ピュータに含まれるリソースの利用や提供を管理する後述のプログラムが動作する。
[0032] 図 2は、本実施の形態におけるネットワークコンピューティングシステムの一例を示 す。ネットワークコンピューティングシステム 50には、マルチプロセッサ 20をそれぞれ 含むサーバ 41およびサーノ 54、スイッチングネットワーク 42で接続された複数のマ ルチプロセッサ 20を含むハイパフォーマンスコンピュータ 52、マルチプロセッサ 20を 含むパーソナルコンピュータ 53、マルチプロセッサ 20を含む家電品 55、マルチプロ セッサ 20以外のプロセッサを含むパーソナルコンピュータ 56がネットワーク 51に接続 されるかたちで含まれる。ネットワーク 51は、インターネットであってもよいし、家庭内 ネットワークなどの LANであってもよい。なお、本図におけるネットワークコンビユーテ イングシステム 50の構成は例示にすぎず、そのハードウェア構成およびネットワーク 5 1への接続台数は任意である。
[0033] サーバ 41のマルチプロセッサ 20は、複数のサブプロセッサ 102と一つのメインプロ セッサ 100を含む力 サーノ lに含まれる各構成は図 1のネットワークコンピュータ 1 0に含まれる各構成と基本的に同じである。サーバ 41では、各サブプロセッサ 102〖こ ぉ 、て、本実施の形態のリアルタイムリソースマネージメントを実行するためのプロセ スが動作する。たとえば、リソースマネージャのプログラムが 1番目のサブプロセッサ 1 02で動作し、リソーススケジューラのプログラムが 2番目のサブプロセッサ 102で動作 し、リソースマネージメントクライアントのプログラムが 3番目のサブプロセッサ 102で動 作する。変形例としては、リソースマネージャのプログラムがサーバ 41に含まれる複 数のサブプロセッサ 102の一つで動作し、リソーススケジューラのプログラムがサーバ 54に含まれるサブプロセッサ 102の一つで動作するように構成してもよい。リソースマ ネージメントクライアントは、ネットワークコンピューティングシステム 50に含まれるすべ てのコンピュータで動作してもよい。
[0034] クリアリングノヽウス 77は、各コンピュータによるリソースの利用と提供の状況を記録し 、その利用に対する料金の課金を処理する。運用監視サーバ 98は、リソースの利用 要求に対する割当の実績や効率を管理する。以下、リソースマネージャ、リソーススケ ジユーラ、リソースマネージメントクライアントの動作について詳述した後で、タリアリン グハウス 77と運用監視サーバ 98の動作を詳述する。
[0035] (リソースマネージャ)
本実施の形態におけるリソースマネージャは、ネットワーク 51に接続されたいずれ かのコンピュータにおけるマルチプロセッサ 20やマルチプロセッサ 20に含まれるサ ブプロセッサ 102などのコンピューティングリソースが他のコンピュータへ提供可能か 否かを管理するために一つのサブプロセッサ 102で動作するプロセスである。いずれ かのコンピューティングリソースが他のコンピュータへ提供可能な状況になったとき、リ ソースマネージャはその提供可能なリソースを有するコンピュータ力 リソース情報を ネットワーク 51経由で受信する。
[0036] リソースマネージャは、後述するリソーススケジューラと連携して動作する。本実施の 形態のリソースマネージャは、リソーススケジューラからリソースの利用要求を受け取り 、その要求において指定された分のリソースを割り当てる処理を実行してリソーススケ ジユーラへ返答する。ここで、リソースの利用要求に対して複数のコンピュータに分散 したリソースを割り当てる場合、リソースマネージャはそれぞれのコンピュータのスぺッ クに応じて利用要求を分割し、リソーススケジューラに返答する。
[0037] リソースマネージャは、提供可能なリソースをリソースタイプで分類するリソース管理 テーブルを有する。リソースマネージャは、たとえばリソースタイプごとの割当可能リソ ース数であるリソースカウンタの値を、リソース割当を実行するたびに減算する。これ により、特定のコンピュータ上の複数のリソースが同時に割り当てられたり、同じコンビ ユータ上のリソースば力りが何度も割り当てられたりすることを回避でき、特定のコンビ ユータへの集中的な負担を抑制することができる。
[0038] リソースマネージャは、リソースの利用要求に対してリソースを割り当てることができ ない場合、割当不可を示す応答をリソーススケジューラに返す。変形例においては、 リソースマネージャは、同一または異なるサーバ上のサブプロセッサで動作する少な くとも一部のリソースマネージャを管理するマネージャ管理テーブルを保持する。リソ ースマネージャは、リソース管理テーブルで管理するリソースの量を示すリソース量情 報を生成し、マネージャ管理テーブルで管理する他のリソースマネージャとの間で互 いのリソース量情報を定期的に交換する。リソースマネージャは、マネージャ管理テ 一ブルを参照し、より多くの利用可能リソースを管理しているリソースマネージャを選 択し、選択したリソースマネージャの識別情報を、対応するリソーススケジューラに返 す。
[0039] (リソーススケジューラ)
本実施の形態におけるリソーススケジューラは、一つのサブプロセッサを占有して 実行されるプロセスである。リソーススケジューラは、ネットワーク 51に接続されたいず れかのコンピュータからリソースの利用要求を受信すると、その利用要求をリソースマ ネージャに非同期で送信する。リソーススケジューラは、送信した利用要求に対してリ ソースが割り当てられるのを待つとともに、リソースマネージャによってリソースが割り 当てられた後、その割り当てられたリソースを保有するコンピュータに対して利用要求 を転送する。リソースを保有するコンピュータが複数に分かれる場合、リソースマネー ジャが利用要求を複数に分割し、これら分割された利用要求をそれぞれ該当するコ ンピュータに対してリソーススケジューラが転送する。スケジューリングキューは、リソ ーススケジューラの動作するサブプロセッサ 102内のローカルメモリ 122に保持され ることが望まし!/、が、メインメモリ 17に保持されてもょ 、。
[0040] リソーススケジューラのスケジューリングアルゴリズムとしては、当業者が知りうるあら ゆるスケジューリング方法を採用可能であり、たとえば利用要求を到着順に処理する FIFO型のスケジューリングを採用してもよい。 FIFO型のスケジューリングにおいて は、リソースの利用要求に対してリソースマネージャがリソースを割り当てられなかつ た場合に、利用要求を発したコンピュータにその利用要求が特定できるようなかたち で割当不可を示す情報を送信する。また、別のスケジューリング方法としては、リソー スマネージャが、対応するリソースマネージャから別のリソースマネージャの識別情報 を受信していればそのリソースマネージャに利用要求を非同期で送信し、その利用 要求に対する返答があった場合にはその割り当てにしたがってリソースを保有するコ ンピュータに利用要求を送信してもよい。さらに別のスケジューリング方法としては、 優先度に基づいて利用要求を処理する方法を採用してもよい。この場合、リソース制 約がより多く含まれる利用要求を優先的に処理する。逆に、リソース制約がより少ない 利用要求を優先的に処理してもよい。あるいは、利用要求に優先度を付加し、その 優先度に高さに応じて処理順序を決定してもよい。この場合、優先度に応じたスケジ ユーリングキューを持つようにしてもょ ヽ。
[0041] (リソースマネージメントクライアント)
本実施の形態におけるリソースマネージメントクライアントは、本実施の形態におけ るネットワークコンピューティングシステムに含まれる各コンピュータ上でクライアントと して動作するプロセスである。リソースマネージメントクライアントは、たとえば以下の 少なくとも 3つの役割を持つ。
[0042] (1)リソースマネージメントクライアントは、自己が管理するマルチプロセッサ 20にお いて外部提供が可能なリソースが発生したときに、提供が可能であるリソースの内容 を示す提供リソース情報を 、ずれかのリソースマネージャに対して送信する。リソース マネージメントクライアントが複数のマルチプロセッサを管理して 、る場合も同様であ る。たとえば、図 2のハイパフォーマンスコンピュータ 52においては、ネットワークイン タフエース NICにつながったマルチプロセッサでのみリソースマネージメントクライア ントを動作させ、スイッチングネットワーク 42に接続されたすベてのマルチプロセッサ のリソースを管理してもよ!/、。
[0043] (2)リソースマネージメントクライアントの動作するコンピュータ上でリソース不足が生 じた場合、リソースマネージメントクライアントはネットワーク 51上のいずれかのリソー ススケジューラに対して利用要求を送信する。
[0044] (3)リソースマネージメントクライアントは、他のコンピュータからの利用要求を受信し たとき、その利用要求を送信したコンピュータに対して自己が管理するマルチプロセ ッサ 20に含まれるリソースを割り当てる。
[0045] 図 2のパーソナルコンピュータ 56のようにマルチプロセッサ 20以外のプロセッサを 内蔵するコンピュータにおいては、上記(1)と(3)の役割を省略した簡易版リソースマ ネージメントクライアントを動作させ、マルチプロセッサ 20を内蔵したコンピュータが複 数接続されたネットワーク 51上で利用要求を出すことによって、マルチプロセッサ 20 を内蔵したコンピュータに処理を代行させる。
[0046] 図 3〜5には、リソースマネージャ、リソーススケジューラ、リソースマネージメントクラ イアントの 3つのプロセスが 1以上のマルチプロセッササーバ上に配置される例がそ れぞれ示される。
[0047] 図 3は、一つのマルチプロセッサ 20を含むサーバ 60において、リソースマネージャ とリソーススケジューラがそれぞれ動作する例を示す。本図の例では、マルチプロセッ サ 20に含まれる二つのサブプロセッサ 102のうち、「SPU1」の IDが付与されたサブ プロセッサ 102においてリソースマネージャ 202が動作し、「SPU2」の IDが付与され たサブプロセッサ 102においてリソーススケジューラ 206が動作する。
[0048] 図 4は、高速ネットワークまたは高速バスで結合された二つのマルチプロセッサ 20 を含むサーバ 62において、リソースマネージャとリソーススケジューラがそれぞれ動 作する例を示す。本図の例では、二つのマルチプロセッサ 20にまたがるように二つ のサブプロセッサ 102が選択され、それぞれでリソースマネージャ 202とリソーススケ ジユーラ 206が動作する。すなわち、一方のマルチプロセッサ 20に含まれる「SPU1」 の IDが付与されたサブプロセッサ 102においてリソースマネージャ 202が動作し、他 方のマルチプロセッサ 20に含まれる「SPU2」の IDが付与されたサブプロセッサ 102 においてリソーススケジューラ 206が動作する。二つのマルチプロセッサ 20は、高速 バスまたは高速ネットワークで結合される。
[0049] 図 5は、ネットワーク 51上に分散された二つのサーバ 64, 66のそれぞれにおける サブプロセッサ 102上で、リソースマネージャとリソーススケジューラが動作する例を 示す。本図の例では、二つのサーバ 64, 66にまたがるように二つのサブプロセッサ 1 02が選択され、それぞれでリソースマネージャ 202とリソーススケジューラ 206が動作 する。すなわち、一方のサーノ 64のマルチプロセッサ 20に含まれる「SPU2」の IDが 付与されたサブプロセッサ 102においてリソースマネージャ 202が動作し、他方のサ ーバ 66のマルチプロセッサ 20に含まれる「SPU3」の IDが付与されたサブプロセッ サ 102においてリソーススケジューラ 206が動作する。
[0050] 以上説明した図 3〜5の各例を比較すると、通信効率の高さは図 3、図 4、図 5の順 に高くなる。本実施の形態では、リソースマネージャ 202とリソーススケジューラ 206が 本質的に非同期で独立して動作するため、図 3〜図 5のいずれの形態でも基本原理 を変免ることなく動作させることができる。
[0051] 図 6は、リソーススケジューラ、リソースマネージャ、リソースマネージメントクライアン トの 3つのプロセスにおける処理手順を示す。本図ではクリアリングハウス 77がーつ だけ示される力 変形例としてネットワーク 51内に複数のクリアリングノヽウス 77が含ま れてもよい。
[0052] (リソースマネージメントクライアントの認証)
クリアリングノヽウス 77は、認証したリソースマネージメントクライアント 200からの情報 のみ受理し、虚偽の情報の受理を拒否する。リソースマネージメントクライアント 200 の認証は、リソースマネージメントクライアント 200が所定のクリアリングノヽウス 77へ最 初にアクセスしたときに実行される。この認証処理では、リソースマネージメントクライ アント 200が、正規に作られたソフトウェアであることを証明するための証明書またはリ ソースマネージメントクライアント IDをクリアリングノヽウス 77に送信する。この証明書が クリアリングハウス 77によって正しく認証された場合、そのリソースマネージメントクライ アント 200に対して電子署名が送られる。その認証されたリソースマネージメントクライ アント 200は、クリアリングハウス 77と通信する場合に電子署名が添付されたメッセ一 ジを送信する。
[0053] (リソース提供者の登録)
リソースの提供者は、提供設定インタフェース 220を通じて、そのコンピュータのリソ ースの一部または全部を他のコンピュータに対して提供するかどうかを設定する。提 供設定インタフェース 220は、リソースマネージメントクライアント 200と一体的に構成 されてもょ 、し、リソースマネージメントクライアント 200と分離したソフトウェアとして構 成されてもよい。提供設定インタフェース 220は、提供するリソースが他のコンビユー タによって利用された場合に支払われる配当金の評価額を計算し、コンピュータの画 面に表示する。リソース提供者は、表示された評価額を確認した上で、サブプロセッ サ数、マルチプロセッサ数、メモリ容量、提供時間などのリソース提供量を提供設定ィ ンタフェース 220を通じて設定する。リソース提供者のコンピュータで動作するリソー スマネージメントクライアント 200aの提供設定インタフェース 220は、設定されたリソ ース提供内容、コンピュータの識別情報、および提供者の個人情報を含んだ提供リ ソース情報をネットワーク 51経由でクリアリングノヽウス 77に転送する(S2)。コンビユー タの識別情報は、たとえばネットワーク 51においてそのコンピュータに付与された IP アドレスである。提供者の個人情報は、たとえば提供者の氏名、電話番号や電子メー ルアドレスなどの連絡先情報、口座番号やクレジットカード番号など、提供者の特定 に必要な情報やその提供者への利用料金支払いに必要な情報である。コンピュータ とクリアリングノヽウス 77の間の通信はセキュアに保たれることが望ましい。クリアリング ノ、ウス 77は、提供設定インタフェース 220から受け取った情報を、管理するリソース の提供元を示す提供元リスト 222に書き込む。
[0054] (リソース利用者の登録)
リソースの利用希望者は、クリアリングノヽウス 77との間であら力じめ利用契約を結ぶ 設定を利用設定インタフェース 224を通じて入力する。利用設定インタフェース 224 は、リソースマネージメントクライアント 200と一体的に構成されてもよいし、リソースマ ネージメントクライアント 200と分離したソフトウェアとして構成されてもょ 、。リソースの 利用希望者は、そのコンピュータで動作するリソースマネージメントクライアント 200b を介してあら力じめ利用設定インタフェース 224を通じてクリアリングノヽウス 77との間 で利用契約を結ぶ。利用契約として、利用者の氏名、電話番号や電子メールァドレ スなどの連絡先情報、口座番号やクレジットカード番号など、利用者の特定に必要な 情報やその利用者への利用料金の課金に必要な情報をクリアリングハウス 77に登録 する(S4)。これらの情報がクリアリングノヽウス 77に登録されると、クリアリングノヽウス 77 は、リソース利用者を一意に特定して認証するための電子署名をリソース利用者のコ ンピュータに送る。
[0055] (リソースの提供と利用の手順)
まず、提供可能な遊休リソースが発生したコンピュータのリソースマネージメントクラ イアント 200aは、選択したリソースマネージャ 202に対して遊休リソースを登録するた めの提供リソース情報を送信する(S 10)。
[0056] サブプロセッサの個数不足などのリソース不足を検出したコンピュータのリソースマ ネージメントクライアント 200bは、他のコンピュータにおける遊休リソースの利用を要 求するために、選択するリソーススケジューラ 206に利用要求を出し (S 12)、その利 用要求がリソーススケジューラ 206のリクエストキュー 208に入れられる。この利用要 求を送信する際、リソースマネージメントクライアント 200bは、リソース利用者の電子 署名が格納されているストレージエリア力も電子署名を読み出し、利用要求とともにリ ソーススケジューラ 206へ送信する。本図の例では、 FIFOキューのかたちでリクエス トキユー 208が実装される。なお、リソーススケジューラ 206はサブプロセッサ 102を 占有して処理が実行される力 リクエストキュー 208は、サブプロセッサ 102内のロー カルメモリ 122にあってもよ!/ヽし、またはメインメモリ 17にあってもよ!/ヽ。
[0057] リソーススケジューラ 206は、リクエストキュー 208の先頭力 利用要求を取り出し、 対応するリソースマネージャ 202に対して利用要求を非同期で送信する(S14)。す なわち、リソーススケジューラ 206は、この利用要求に対するリソースマネージャ 202 の返答を待たず、このとき割当リソースキュー 210が空であれば次の利用要求をリク エストキユー 208から取り出して処理し、割当リソースキュー 210が空でなければ S16 へ進む。なお、リソーススケジューラ 206は、サブプロセッサ 102を占有してその処理 が実行される力 割当リソースキュー 210は、サブプロセッサ 102内のローカルメモリ 122にあってもよいし、またはメインメモリ 17にあってもよい。リソースマネージャ 202 は、リソーススケジューラ 206から受信した利用要求をリクエストキュー 212に追加す る。
[0058] リソースマネージャ 202は、リクエストキュー 212の先頭力も利用要求を取り出し、管 理されて!/、る遊休リソース力も適切なリソースを選択して割り当て、その割当の結果を 示すリソース割当情報を利用要求の送信元であるリソーススケジューラ 206へ返信す る(S16)。このリソース割当情報は、元の利用要求が分割されて形成される複数の利 用要求パケットであり、割り当てられたリソースのコンピュータをそれぞれの宛先とする 。これら複数の利用要求パケットは割当リソースキュー 210に入る。なお、リソースマ ネージャ 202は、サブプロセッサ 102を占有して処理が実行される力 リクエストキュ 一 212は、サブプロセッサ 102内のローカルメモリ 122にあってもよいし、またはメイン メモリ 17にあってもよい。
[0059] リソーススケジューラ 206は、割当リソースキュー 210が空でなければその先頭から 利用要求パケットを取り出し、割り当てがなされた遊休リソースを保有するコンビユー タのリソースマネージメントクライアント 200aに対して利用要求パケットを転送する(S 18)。利用要求パケットを受信したリソースを提供するコンピュータにおいては、そのリ ソースマネージメントクライアント 200aが利用要求に対応するリソースを割り当て、要 求された処理を実行する。
[0060] リソースマネージメントクライアント 200bは、リソーススケジューラ 206によって要求さ れた処理が成功裏に完了した場合、クリアリングノヽウス 77に対して、利用要求および 利用要求の送信先コンピュータを識別できる情報を送信する。利用要求を受信した タリアリングハウス 77は、利用要求で割り当てられたリソース量に応じて、利用要求に 含まれるリソース利用者の電子署名から特定されるユーザに対して利用料金を課金 する処理を実行する。一方、利用要求が送信されたコンピュータの識別情報によって 特定されるリソース提供者の個人情報力 口座番号またはクレジットカード番号を取り 出し、これらの情報によって特定される口座に対して、利用要求によって割り当てら れたリソース量に応じて決められた利用料金を支払う指示を出す。ここで、利用され たリソースの提供者に支払われる利用料金の額は、リソースの利用者に対して課金さ れた利用料金の額を超えな!/ヽように設定される。
[0061] (リソース割当実績に応じたリソースマネージャの選択)
図 7は、運用監視サーバ 98の仲介によりリソースマネージメントクライアント 200がリ ソース割当実績に応じてリソースマネージャ 202を選択する仕組みを説明する図であ る。運用監視サーバ 98は、ネットワーク 51に接続されたサーバのサブプロセッサで動 作する 1以上のリソースマネージャ 202から一定時間ごとにリソース割当実績 230を 受信し (S50)、そのリソース割当実績 230を管理する。一定時間ごとのリソース割当 実績 230は、たとえば一定時間ごとに受信した利用要求数や、一定時間ごとに割当 が成功したリソース量を含む。本図の例では、コンピュータ Aからは一定時間内の利 用要求数が 60回であったことを示すリソース割当実績 230が送られ、コンピュータ B 力もは一定時間内の利用要求数が 150回であったことを示すリソース割当実績 230 が送られ、コンピュータ Cからは利用要求数が一定時間内の 80回であったことを示す リソース割当実績 230が送られる。リソースマネージメントクライアント 200は、運用監 視サーバ 98から各コンピュータのリソース割当実績 230を受信し (S52)、リソース運 用効率がより高いリソースマネージャを選択するためにリソース割当実績を参照する
[0062] リソースの提供者は、リソースの被使用量に応じて使用料金の配当を受け、他者の 利用のために提供した遊休リソースがより多く使用されれば、より多くの配当を受け取 ることができる。よって、リソース提供者により多くの配当金をもたらすことができるよう に、より高いリソース割当実績を持つリソースマネージャ 202のいずれかを選択し、リ ソース割当実績の変化に応じてリソースマネージャ 202の選択を切り換える(S54)。
[0063] リソースマネージメントクライアント 200は、リソースマネージャ 202をリソース割当実 績に応じて自動的に変更してもよいし、リソース提供者による明示的な指示に基づい て変更してもよい。リソース提供者による明示的な指示に基づいて変更する場合、リ ソースマネージメントクライアント 200は、利用可能なリソースマネージャの IDとそのリ ソース割当実績 230とを含むリストをリソース提供者に提示した上で、リソース提供者 による明示的な選択指示を受け取る。
[0064] (スケジューリング効率実績に応じたリソーススケジューラの選択)
図 8は、運用監視サーバ 98の仲介によりリソースマネージメントクライアント 200がス ケジユーリング効率実績に応じてリソーススケジューラ 206を選択する仕組みを説明 する図である。運用監視サーバ 98は、ネットワーク 51に接続されたサーバのサブプ 口セッサで動作する 1以上のリソーススケジューラ 206から一定時間ごとにスケジユー ル効率実績 240を受信し (S60)、そのスケジュール効率実績 240を管理する。スケ ジュール効率実績 240は、スケジューリングにおいて利用要求を出して力もリソース が割り当てられるまでの平均待ち時間であってもよいし、リクエスト割当成功率であつ てもよい。リソースマネージメントクライアント 200は、運用監視サーバ 98から各コンビ ユータのスケジュール効率実績 240を受信し (S62)、スケジュール効率がより高いリ ソーススケジューラ 206を選択するためにスケジュール効率実績 240を参照する。 [0065] リソースの利用者は、より継続的にリソースが割り当てられることを望むものである。 よって、リソース利用者により効率よくリソースが割り当てられるようにするため、より高 V、スケジュール効率実績を持つリソーススケジューラ 206の 、ずれかを選択し、スケ ジュール効率実績の変化に応じてリソーススケジューラ 206の選択を切り換える(S6 4)。
[0066] リソースマネージメントクライアント 200は、リソーススケジューラ 206をスケジュール 効率実績に応じて自動的に変更してもよいし、リソース利用者による明示的な指示に 基づいて変更してもよい。リソース利用者による明示的な指示に基づいて変更する場 合、リソースマネージメントクライアント 200は、利用可能なリソーススケジューラの IDと そのスケジュール効率実績 240とを含むリストをリソース利用者に提示した上で、リソ ース利用者による明示的な選択指示を受け取る。
[0067] (第 2の実施の形態)
本実施の形態においては、リソースと所定のポイントを交換することによりリソースの 利用者と提供者の間で利用の対価を精算する点で第 1の実施の形態と異なる。すな わち、本実施の形態においては、リソースの提供者に対してポイントを付与し、そのポ イントを使用して他のリソースを利用することができ、こうしたポイントを用いることによ つて実質的にリソースの交換を実現することができる。ここでいう「ポイント」は、リソー ス利用の対価を支払うときの仮想的な通貨としての役割を果たし、リソース量に換算 することができる。また、ここでいう「リソース量」は、サブプロセッサ数、メモリ容量、周 辺機器 'WiFiデバイスドライバなどのデバイスといったハードウェア資源の量のみな らず、 WiFiデバイスドライバ占有時間などのリソース使用時間の概念も含まれる。
[0068] 図 9は、第 2の実施の形態におけるリソーススケジューラ、リソースマネージャ、リソー スマネージメントクライアントの 3つのプロセスにおける処理手順を示す。以下、第 1の 実施の形態との相違点を中心に説明し、共通点については説明を省略する。
[0069] (ポイント口座の登録)
リソースの提供者および利用者となるコンピュータの所有者は、口座設定インタフエ ース 226を通じて、リソース交換用のポイント口座をあら力じめ開設することにより、ク リアリングノヽウス 77との間で利用契約を結ぶ。 口座設定インタフェース 226は、利用 契約に必要な情報として、コンピュータの識別情報と、所有者の個人情報とをネットヮ ーク 51経由でタリアリングハウス 77に転送する。所有者の個人情報は、たとえば所有 者の氏名、電話番号や電子メールアドレスなどの連絡先情報、ポイント口座の識別 情報など、その所有者の特定に必要な情報やその所有者へのリソース交換ポイント 付与に必要な情報である。コンピュータとクリアリングノヽウス 77の間の通信はセキュア に保たれることが望ましい。クリアリングノ、ウス 77は、リソース設定インタフェースから 受け取った情報を、管理するリソースの提供元を示す提供元リスト 222に書き込む。 タリアリングハウス 77は、ポイント口座を開設したコンピュータに対し、その所有者を一 意に特定して認証するための電子署名を送信する。クリアリングハウス 77は、ポイント 口座をはじめとする所有者の個人情報を電子署名によって特定する。ポイント口座は 、クリアリングハウス 77内に置かれてもよいし、ネットワーク 51内の別のサーバに置か れてもよい。ただし、クリアリングノヽウス 77とは別のサーバに置かれる場合、タリアリン グハウス 77がそのサーバに直接アクセスできるようにする必要がある。
[0070] (リソース提供者の登録)
リソースの提供者は、提供設定インタフェース 220を通じて、そのコンピュータのリソ ースの一部または全部を他のコンピュータに対して提供するかどうかを設定する。本 実施の形態における提供設定インタフェース 220は、提供するリソースが他のコンビ ユータによって利用された場合、後にそのコンピュータが他のコンピュータのリソース を利用する際に使用できるリソース交換ポイントの評価額を計算し、コンピュータ画面 に表示する。また、本実施の形態における提供リソース情報は、提供設定インタフエ ース 220からクリアリングノヽウス 77へ電子署名とともに転送され、クリアリングノヽウス 77 にお 、て提供元リスト 222に書き込まれる。
[0071] (リソース利用者の登録)
リソースの利用希望者は、リソースと交換できるポイントを自己のポイント口座にあら 力じめ保有する必要がある。
[0072] サブプロセッサの個数不足などのリソース不足を検出したコンピュータで動作するリ ソースマネージメントクライアント 200bは、不足リソースとの交換に十分なポイントを有 している力否かをポイント口座で確認する。その上で、十分なポイントを有していた場 合には、リソーススケジューラ 206に利用要求を送信する。利用要求を送信する際、 リソースマネージメントクライアント 200bは、所定のストレージエリア力も電子署名を読 み出し、これを利用要求とともにリソーススケジューラ 206へ送信する。
[0073] リソースマネージメントクライアント 200bは、リソーススケジューラ 206によって要求さ れた処理が成功裏に完了した場合、クリアリングノヽウス 77に対して、利用要求および 利用要求の送信先コンピュータを識別できる情報を送信する。利用要求を受信した タリアリングハウス 77は、利用要求で割り当てられたリソース量に応じて、利用要求に 含まれる電子署名から利用者を特定し、その利用者のポイント口座カゝらポイントを差 し引く。一方、利用要求の送信先コンピュータの識別情報によって特定されるリソース 提供者の個人情報力 ポイント口座の識別情報を取り出し、このポイント口座に対し て、利用要求によって割り当てられたリソース量に応じて決められた額のポイントを加 算する指示を出す。ここで、利用されたリソースの提供者に対して加算されるリソース 交換ポイントは、リソースの利用者力も減算されたリソース交換ポイントを超えな 、よう に設定するのが好ましい。
[0074] 以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、その 各構成要素や各処理プロセスの組合せに 、ろ 、ろな変形が可能なこと、またそうした 変形例も本発明の範囲にあることは当業者に理解されるところである。以下、そうした 変形例を挙げる。
[0075] 第 1および第 2の実施の形態においては、ネットワークコンピュータ 10が搭載するマ ルチプロセッサ 20として非対称型に構成されたマルチプロセッサを例示した。変形例 においては、対称型のマルチプロセッサをネットワークコンピュータ 10に搭載させた 構成を採用してもよい。
[0076] 図 10は、第 1の変形例におけるワンチップマルチプロセッサの構成を示す。本図に 示すマルチプロセッサ 300は、図 1におけるマルチプロセッサ 20の代わりにネットヮ ークコンピュータ 10へ搭載される。マルチプロセッサ 300は、第 1プロセッサ 302、第 2プロセッサ 304、第 1L1キャッシュ 306、第 2L1キャッシュ 308、第 1L2キャッシュ 31 0、第 2L2キャッシュ 312、メモリコントローラ 314を有する。第 1プロセッサ 302、第 1L 1キャッシュ 306、第 1L2キャッシュ 310、メモリコントローラ 314は、互いに接続されて 図 1のメインプロセッサ 100またはサブプロセッサ 102に代わるプロセッサユニットとし て動作する。同様に、第 2プロセッサ 304、第 2L1キャッシュ 308、第 2L2キャッシュ 3 12、メモリコントローラ 314もまた、互いに接続されて図 1のメインプロセッサ 100また はサブプロセッサ 102に代わるプロセッサユニットとして動作する。ただし、メモリコント ローラ 314はマルチプロセッサ 300に一つだけ搭載され、第 1プロセッサ 302のュ- ットと第 2プロセッサ 304のユニットで共用される。第 1プロセッサ 302と第 2プロセッサ 304ίま互 、に接続されて!、る。
[0077] 本図のとおり、第 1プロセッサ 302、第 1L1キャッシュ 306、第 1L2キャッシュ 310と、 第 2プロセッサ 304、第 2L1キャッシュ 308、第 2L2キャッシュ 312とが、メモリコント口 ーラ 314を介して対称的に構成されている。第 1プロセッサ 302および第 2プロセッサ 304のうち、一方のプロセッサが他方のプロセッサにタスクを割り当てるようなメインと サブの関係で動作してもよ 、。
[0078] 図 11は、第 2の変形例におけるワンチップマルチプロセッサの構成を示す。本図に 示すマルチプロセッサ 320もまた、図 1におけるマルチプロセッサ 20の代わりにネット ワークコンピュータ 10へ搭載される。マルチプロセッサ 320は、第 1プロセッサ 322、 第 2プロセッサ 324、第 1L1キャッシュ 326、第 2L1キャッシュ 328、 L2キャッシュ 330 、メモリコントローラ 332を有する。第 1プロセッサ 322、第 1L1キャッシュ 326、 L2キヤ ッシュ 330、メモリコントローラ 332は、互いに接続されて図 1のメインプロセッサ 100ま たはサブプロセッサ 102に代わるプロセッサユニットとして動作する。同様に、第 2プ 口セッサ 324、第 2L1キャッシュ 328、 L2キャッシュ 330、メモリコントローラ 332もまた 、接続されて図 1のメインプロセッサ 100またはサブプロセッサ 102に代わるプロセッ サユニットとして動作する。ただし、 L2キャッシュ 330とメモリコントローラ 332は、それ ぞれマルチプロセッサ 320に一つずつだけ搭載され、第 1プロセッサ 322のユニットと 第 2プロセッサ 324のユニットで共用される。第 1プロセッサ 322、第 2プロセッサ 324 は互いに接続されている。
[0079] 本図のとおり、第 1プロセッサ 322、第 1L1キャッシュ 326と、第 2プロセッサ 324、第 2L1キャッシュ 328と力 L2キャッシュ 330とメモリコントローラ 332を介して対称的に 構成されている。第 1プロセッサ 322と第 2プロセッサ 324のうち、一方のプロセッサが 他方のプロセッサにタスクを割り当てるようなメインとサブの関係で動作してもよい。
[0080] なお、図 10および図 11では、対称型のマルチプロセッサとして二つのプロセッサを 有する構成を例示した力 それ以上の数のプロセッサ、たとえば 4個以上のプロセッ サを有する構成であってもよ 、。
産業上の利用可能性
[0081] ネットワーク上のハードウェアリソースを効率よく利用できるシステムを構築すること ができる。

Claims

請求の範囲
[1] それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサと、
ネットワーク上のコンピュータとの間でデータを送受信するネットワーク通信部と、を 備え、
前記マルチプロセッサは、
ネットワーク上のコンピュータ力もネットワークを介して提供されることが可能となって いるハードウェアリソースの情報を受信して管理するとともに、ハードウェアリソース利 用要求を受けたときは前記管理するハードウェアリソースの提供を処理するリソース マネージャを、前記ローカルメモリにロードされた状態で動作させる第 1のプロセッサ と、
ネットワーク上のコンピュータ力 ハードウェアリソース利用要求を受信して管理する とともに、前記リソースマネージャの仲介によって提供されるハードウェアリソースを前 記ハードウェアリソース利用要求に対して割り当てるリソーススケジューラを、前記口 一カルメモリにロードされた状態で動作させる第 2のプロセッサと、
を含むことを特徴とするマルチプロセッサコンピュータ。
[2] それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだ第 1 のマノレチプロセッサと、
前記第 1のマルチプロセッサと高速バスで結合され、それぞれがローカルメモリを有 して独立に動作する複数のプロセッサを含んだ第 2のマルチプロセッサと、
ネットワーク上のコンピュータとの間でデータを送受信するネットワーク通信部と、を 備え、
前記第 1のマルチプロセッサは、ネットワーク上のコンピュータからネットワークを介 して提供されることが可能となっているハードウェアリソースの情報を受信して管理す るとともに、ハードウェアリソース利用要求を受けたときは前記管理するハードウェアリ ソースの提供を処理するリソースマネージャを、前記ローカルメモリにロードされた状 態で動作させるプロセッサを含み、
前記第 2のマルチプロセッサは、ネットワーク上のコンピュータからハードウェアリソ ース利用要求を受信して管理するとともに、前記リソースマネージャの仲介によって 提供されるハードウェアリソースを前記ハードウェアリソース利用要求に対して割り当 てるリソーススケジューラを、前記ローカルメモリにロードされた状態で動作させるプロ セッサを含むことを特徴とするマルチプロセッサコンピュータ。
[3] それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサと、
ネットワーク上のコンピュータとの間でデータを送受信するネットワーク通信部と、を 備え、
前記マルチプロセッサは、ネットワーク上のコンピュータからネットワークを介して提 供されることが可能となっているハードウェアリソースの情報を受信して管理するととも に、ネットワーク上の外部のコンピュータで動作するリソーススケジューラ力 ハードウ エアリソース利用要求を受けたときは前記管理するハードウェアリソースの提供を処 理するリソースマネージャを、前記ローカルメモリにロードされた状態で動作させるプ 口セッサを含むことを特徴とするマルチプロセッサコンピュータ。
[4] それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサと、
ネットワーク上のコンピュータとの間でデータを送受信するネットワーク通信部と、を 備え、
前記マルチプロセッサは、ネットワーク上のコンピュータからハードウェアリソース利 用要求を受信して管理するとともに、ネットワーク上の外部のコンピュータで動作する リソースマネージャによる仲介によって提供されるハードウェアリソースを前記ハード ウェアリソース利用要求に対して割り当てるリソーススケジューラを、前記ローカルメモ リにロードされた状態で動作させるプロセッサを含むことを特徴とするマルチプロセッ サコンピュータ。
[5] 前記リソースマネージャは、ネットワーク上のコンピュータで動作するクライアントから そのコンピュータに含まれるハードウェアリソースのうち提供可能なリソースの内容を 示す情報を受信し、
前記リソーススケジューラは、ネットワーク上のコンピュータで動作するクライアントか ら他のコンピュータのハードウェアリソースの利用要求を受信することを特徴とする請 求項 1から 4のいずれかに記載のマルチプロセッサコンピュータ。
[6] 前記リソースマネージャは、所定期間内の利用要求数を含むリソース割当の実績を 記録してこれを所定のサーバへ送信するとともに、ネットワーク上のコンピュータで動 作するクライアントによって前記リソース割当の実績に基づいて前記リソースマネージ ャが選択されたときに、前記クライアントからそのコンピュータに含まれるハードウェア リソースのうち提供可能なリソースの内容を示す情報を受信することを特徴とする請 求項 1から 5のいずれかに記載のマルチプロセッサコンピュータ。
[7] 前記リソーススケジューラは、所定期間内のスケジューリング効率を記録してこれを 所定のサーバへ送信するとともに、ネットワーク上のコンピュータで動作するクライア ントによって前記スケジューリング効率に基づいて前記リソーススケジューラが選択さ れたときに、前記クライアントからハードウェアリソースの利用要求を受信することを特 徴とする請求項 1から 6のいずれかに記載のマルチプロセッサコンピュータ。
[8] 相互にネットワークで接続された複数のコンピュータを含むシステムであって、 前記複数のコンピュータは、
それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータから ネットワークを介して提供されることが可能となっているハードウェアリソースの情報を 受信してハードウェアリソース利用要求を受けたときは前記管理するハードウェアリソ ースの提供を処理するリソースマネージャを前記ローカルメモリにロードされた状態で 動作させるコンピュータと、
それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサにおけるいずれかのプロセッサにより、ネットワーク上のコンピュータから ハードウェアリソース利用要求を受信して前記リソースマネージャの仲介によって提 供されるハードウェアリソースを前記ハードウェアリソース利用要求に対して割り当て るリソーススケジューラを前記ローカルメモリにロードされた状態で動作させるコンビュ ータと、
他のコンピュータへハードウェアリソースの提供が可能となったときに前記ハードウ エアリソースの情報を前記リソースマネージャに送信するとともに、他のコンピュータの ハードウェアリソースを利用する場合にはハードウェアリソースの利用要求を前記リソ ーススケジューラに送信するリソースマネージメントクライアントを動作させるクライアン トコンピュータと、
を含むことを特徴とするネットワークコンピューティングシステム。
[9] 前記複数のコンピュータは、ネットワーク上におけるハードウェアリソースの利用要 求に対する割当の実績を管理する運用監視サーバコンピュータを含み、
前記リソースマネージャは、所定期間内の利用要求数を含むリソース割当の実績を 記録してこれを前記運用監視サーバコンピュータへ送信するとともに、前記リソースマ ネージメントクライアントによって当該リソースマネージャが選択されたときに、前記リソ ースマネージメントクライアントからそのクライアントコンピュータに含まれるハードゥエ ァリソースのうち提供可能なリソースの内容を示す情報を受信し、
前記リソースマネージメントクライアントは、複数のリソースマネージャのそれぞれに おけるリソース割当の実績を前記運用監視サーバコンピュータ力 受信し、それらの リソース割当の実績に基づき実績がより高いリソースマネージャを選択し、提供可能 なリソースの内容を示す情報を前記選択したリソースマネージャへ送信することを特 徴とする請求項 8に記載のネットワークコンピューティングシステム。
[10] 前記複数のコンピュータは、ネットワーク上におけるハードウェアリソースの利用要 求に対するリソース割当のスケジューリング効率を管理する運用監視サーバコンビュ ータを含み、
前記リソーススケジューラは、所定期間内のスケジューリング効率を記録してこれを 前記運用監視サーバコンピュータへ送信するとともに、前記リソースマネージメントク ライアントによって当該リソーススケジューラが選択されたときに、前記リソースマネー ジメントクライアントからハードウェアリソースの利用要求を受信し、
前記リソースマネージメントクライアントは、複数のリソーススケジューラのそれぞれ におけるリソース割当のスケジューリング効率を前記運用監視サーバコンピュータか ら受信し、それらのリソース割当のスケジューリング効率に基づき効率がより高いリソ ーススケジューラを選択し、ハードウェアリソースの利用要求を前記選択したリソース スケジューラへ送信することを特徴とする請求項 8に記載のネットワークコンビユーティ ングシステム。
[11] それぞれがローカルメモリを有して独立に動作する複数のプロセッサを含んだマル チプロセッサと、
ネットワーク上のコンピュータ力もネットワークを介して提供されることが可能となって いるハードウェアリソースの情報を管理してハードウェアリソースの提供を処理するリソ ースマネージャが動作する他のマルチプロセッサコンピュータとの間でデータを送受 信するとともに、ネットワーク上のコンピュータ力 ハードウェアリソース利用要求を受 信して前記リソースマネージャの仲介によって提供されるハードウェアリソースを前記 ハードウェアリソース利用要求に対して割り当てるリソーススケジューラが動作する他 のマルチプロセッサコンピュータとの間でデータを送受信するネットワーク通信部と、 を備え、
前記マルチプロセッサは、
他のマルチプロセッサコンピュータへハードウェアリソースの提供が可能となったと きに前記ハードウェアリソースの情報をネットワーク上のいずれかのマルチプロセッサ コンピュータで動作する前記リソースマネージャに送信するとともに、他のマルチプロ セッサコンピュータのハードウェアリソースを利用する場合にはハードウェアリソースの 利用要求をネットワーク上のいずれかのマルチプロセッサコンピュータで動作する前 記リソーススケジューラに送信するリソースマネージメントクライアントが動作するプロ セッサと、を備えることを特徴とするマルチプロセッサコンピュータ。
[12] 前記リソースマネージメントクライアントは、前記ネットワーク通信部を介し、ネットヮ ーク上の複数のリソースマネージャのそれぞれにおけるリソース割当の実績を所定の サーバから受信し、それらのリソース割当の実績に基づき実績がより高いリソースマネ 一ジャを選択し、提供可能なリソースの内容を示す情報を前記選択したリソースマネ 一ジャへ送信することを特徴とする請求項 11に記載のマルチプロセッサコンピュータ
[13] 前記リソースマネージメントクライアントは、前記ネットワーク通信部を介し、ネットヮ ーク上の複数のリソーススケジューラのそれぞれにおけるリソース割当のスケジユーリ ング効率を所定のサーノから受信し、それらのリソース割当のスケジューリング効率 に基づき効率がより高 、リソーススケジューラを選択し、ハードウェアリソースの利用 要求を前記選択したリソーススケジューラへ送信することを特徴とする請求項 11に記 載のマルチプロセッサコンピュータ。
PCT/JP2006/319678 2006-03-28 2006-10-02 マルチプロセッサコンピュータおよびネットワークコンピューティングシステム WO2007110987A1 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US12/294,483 US8589551B2 (en) 2006-03-28 2006-10-02 Multiprocessor computer and network computing system processing use and provision of hardware resource via a network

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP2006087145A JP4963854B2 (ja) 2006-03-28 2006-03-28 マルチプロセッサコンピュータおよびネットワークコンピューティングシステム
JP2006-087145 2006-03-28

Publications (1)

Publication Number Publication Date
WO2007110987A1 true WO2007110987A1 (ja) 2007-10-04

Family

ID=38540925

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/JP2006/319678 WO2007110987A1 (ja) 2006-03-28 2006-10-02 マルチプロセッサコンピュータおよびネットワークコンピューティングシステム

Country Status (3)

Country Link
US (1) US8589551B2 (ja)
JP (1) JP4963854B2 (ja)
WO (1) WO2007110987A1 (ja)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8874477B2 (en) 2005-10-04 2014-10-28 Steven Mark Hoffberg Multifactorial optimization system and method
US9317329B2 (en) 2010-11-15 2016-04-19 Qualcomm Incorporated Arbitrating resource acquisition for applications of a multi-processor mobile communications device
FR3009100B1 (fr) * 2013-07-24 2017-03-17 Bull Systeme comprenant un ensemble de ressources commun a plusieurs gestionnaires de ressources et de taches
DE102014108483A1 (de) * 2014-06-17 2015-12-17 Datenlotsen Informationssysteme Gmbh Client-Server-System und Endgerät

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339401A (ja) * 2004-05-28 2005-12-08 Sony Corp 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム
JP2006048442A (ja) * 2004-08-05 2006-02-16 Canon Inc 情報処理装置およびその制御方法、並びに、画像処理方法

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3155537B2 (ja) * 1989-01-23 2001-04-09 株式会社日立製作所 実記憶管理方法
US5179702A (en) * 1989-12-29 1993-01-12 Supercomputer Systems Limited Partnership System and method for controlling a highly parallel multiprocessor using an anarchy based scheduler for parallel execution thread scheduling
US6105053A (en) * 1995-06-23 2000-08-15 Emc Corporation Operating system for a non-uniform memory access multiprocessor system
US6947987B2 (en) * 1998-05-29 2005-09-20 Ncr Corporation Method and apparatus for allocating network resources and changing the allocation based on dynamic workload changes
US6101547A (en) * 1998-07-14 2000-08-08 Panasonic Technologies, Inc. Inexpensive, scalable and open-architecture media server
US7448037B2 (en) * 2004-01-13 2008-11-04 International Business Machines Corporation Method and data processing system having dynamic profile-directed feedback at runtime
US7856632B2 (en) * 2004-01-29 2010-12-21 Klingman Edwin E iMEM ASCII architecture for executing system operators and processing data operators
US7287127B2 (en) * 2004-08-05 2007-10-23 International Business Machines Corporation Adaptive scheduler using inherent knowledge of operating system subsystems for managing resources in a data processing system

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005339401A (ja) * 2004-05-28 2005-12-08 Sony Corp 情報処理装置及びその制御方法、情報処理コントローラ、情報処理ユニット及びその制御方法、並びにコンピュータプログラム
JP2006048442A (ja) * 2004-08-05 2006-02-16 Canon Inc 情報処理装置およびその制御方法、並びに、画像処理方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
NAZARENO ANDRADE ET AL.: "OurGrid: An Approach to Easily Assemble Grids with Equitable Resource Sharing", PROCEEDINGS OF 9TH INTERNATIONAL WORKSHOP ON JOB SCHEDULING STRATEGIES FOR PARALLEL PROCESSING, LNCS2862, 24 June 2003 (2003-06-24), pages 61 - 86, XP019049433 *

Also Published As

Publication number Publication date
JP2007264885A (ja) 2007-10-11
US20110022712A1 (en) 2011-01-27
JP4963854B2 (ja) 2012-06-27
US8589551B2 (en) 2013-11-19

Similar Documents

Publication Publication Date Title
US11630704B2 (en) System and method for a workload management and scheduling module to manage access to a compute environment according to local and non-local user identity information
CN1128406C (zh) 数据处理系统及其中断处理方法
JP4214682B2 (ja) 計算機およびその入出力手段
CN109324900B (zh) 用于按需服务环境中的消息队列的基于竞价的资源共享
US8190682B2 (en) Managing execution of programs by multiple computing systems
WO2018035856A1 (zh) 实现硬件加速处理的方法、设备和系统
JP4569846B2 (ja) I/oノード制御方式及び方法
JP2015537307A (ja) コンポーネント指向ハイブリッドクラウドオペレーティングシステムのアーキテクチャ及びその通信方法
CN102298539A (zh) 一种用于分布式并行处理的共享资源调度方法及系统
SG182420A1 (en) Managing private use of program execution capacity
EP1725947A4 (en) SYSTEM AND METHOD FOR ADVANCED RESERVATIONS IN A CALCULATION ENVIRONMENT
Khalifa¹ et al. Collaborative autonomic resource management system for mobile cloud computing
Maiti et al. Internet of Things applications placement to minimize latency in multi-tier fog computing framework
WO2005116832A1 (ja) 分散処理環境におけるジョブの実行を制御するためのコンピュータシステム、方法及びプログラム
JP4963854B2 (ja) マルチプロセッサコンピュータおよびネットワークコンピューティングシステム
JP4963855B2 (ja) ネットワークコンピューティングシステムおよびマルチプロセッサコンピュータ
Swain et al. Constraint aware profit maximization scheduling of tasks in heterogeneous datacenters
Faragardi et al. An energy‐aware resource provisioning scheme for real‐time applications in a cloud data center
Himthani et al. Comparative analysis of VM scheduling algorithms in cloud environment
Bindu et al. Perspective study on resource level load balancing in grid computing environments
Gadre et al. Investigating MapReduce framework extensions for efficient processing of geographically scattered datasets
Manikandan et al. Comprehensive solution of Scheduling and Balancing Load in Cloud-A Review
Santhiya Dynamic resource scheduling using Delay time algorithm in Cloud environment
Liu et al. QoS-aware I/O schedule for virtual machines in cloud computing environment
JP2013041361A (ja) リソース調停システム及び調停方法

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 06811026

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 06811026

Country of ref document: EP

Kind code of ref document: A1

WWE Wipo information: entry into national phase

Ref document number: 12294483

Country of ref document: US