摘要:
Information processing apparatus, including occurrence number counter counting events that occurred in each of a plurality of CPUs. Apparatus performs functions of; storing accumulated occurrence number of events, which occurred while the thread is being executed by each of the CPUs, in a thread storage area of the thread associating accumulated occurrence number with CPU; storing, in the thread storage area, a value of occurrence number counter of the CPU, the value having been counted before the thread is resumed by the CPU; and adding, to accumulated occurrence number which has been stored in accumulated number storing unit while corresponding to the CPU, a difference value obtained by subtracting a counter value, which has been stored in the start-time number storing unit of the thread, from a counter value of the occurrence number counter of the CPU, in a case where the CPU terminates an execution of the thread.
摘要:
Variations of waiting times of requests for services handled by a processor are minimized. In response to the processor receiving a request for a service, an arrival time of the request for the service is recorded and added to a total arrival time for all requests for the service, and a counter of a number of waiting requests for the service is incremented. In response to the processor processing the request, the arrival time of the request is subtracted from the total arrival time, and the counter is decremented. In either case, an average waiting time of requests for the service is determined, a history of the average waiting times is maintained, and the variation within this history is determined. Where the variation is greater than a threshold, processor resources are adjusted to minimize variations within waiting times of requests for all the services handled by the processor.
摘要:
The present invention is directed to expanding the scope of execution optimization by method inlining in a language with a security facility such as Java. More particularly, the present invention is directed to a step of generating a code necessary for looping by a tail recursion for a first method including an invocation of a method whose process after its invocation is indefinite and which includes a self recursion, and a step of generating a code for counting the number of iterations of the loop are included. SecurityManager corrects the depth of the frame associated with a second method in the storage area by using the count value by the code for counting the number of iterations of the loop. It also includes the steps of: inlining a code of the first method into the second method, wherein the second method includes an invocation of the first method whose process after its invocation is indefinite; getting the invocation relationship information between the first and the second methods in a state before inlining the code of the first method, and storing the invocation relationship information into a storage area available later; and generating a code for storing information about the first method being executed when the code of the inlined first method is executed. SecurityManager traces the stack with generated invocation relationship information.
摘要:
To generate an optimum communication schedule when data is transmitted or received between processors which constitute a parallel computer or a distributed multiprocessor system. Processors which each perform inter-processor communication are sorted into a plurality of groups. A communication graph is generated whose nodes correspond to the groups and edges correspond to the communications. Communication graphs are generated for distances between nodes from one through N−1. Each communication graph corresponds to a communication step of the inter-processor communication. Communication is grasped as a whole by the communication graph and the edge of the communication graph means the inter-processor communication which is performed in a certain communication step. In this way, the communication can be optimized.
摘要:
Variations of waiting times of requests for services handled by a processor are minimized. In response to the processor receiving a request for a service, an arrival time of the request for the service is recorded and added to a total arrival time for all requests for the service, and a counter of a number of waiting requests for the service is incremented. In response to the processor processing the request, the arrival time of the request is subtracted from the total arrival time, and the counter is decremented. In either case, an average waiting time of requests for the service is determined, a history of the average waiting times is maintained, and the variation within this history is determined. Where the variation is greater than a threshold, processor resources are adjusted to minimize variations within waiting times of requests for all the services handled by the processor.
摘要:
Information processing apparatus, including occurrence number counter counting events that occurred in each of a plurality of CPUs. Apparatus performs functions of; storing accumulated occurrence number of events, which occurred while the thread is being executed by each of the CPUs, in a thread storage area of the thread associating accumulated occurrence number with CPU; storing, in the thread storage area, a value of occurrence number counter of the CPU, the value having been counted before the thread is resumed by the CPU; and adding, to accumulated occurrence number which has been stored in accumulated number storing unit while corresponding to the CPU, a difference value obtained by subtracting a counter value, which has been stored in the start-time number storing unit of the thread, from a counter value of the occurrence number counter of the CPU, in a case where the CPU terminates an execution of the thread.
摘要:
To generate an optimum communication schedule when data is transmitted or received between processors which constitute a parallel computer or a distributed multiprocessor system.Processors which each perform inter-processor communication are sorted into a plurality of groups. A communication graph is generated whose nodes correspond to the groups and edges correspond to the communications. Communication graphs are generated for distances between nodes from one through N-1. Each communication graph corresponds to a communication step of the inter-processor communication. Communication is grasped as a whole by the communication graph and the edge of the communication graph means the inter-processor communication which is performed in a certain communication step. In this way, the communication can be optimized.
摘要:
In a multiprocessor computer system, a lock operation is maintained with a thread using non-atomic instructions. Identifiers are assigned to each thread. Flags in conjunction with the thread identifiers are used to determine the continuity of the lock with a thread. However, in the event continuity of the lock with the thread ceases, a compare-and-swap operation is executed to reset the lock with the same thread or another thread. Similarly, in the event there has been a collision between two or more threads requesting the lock, a compare-and-swap operation is executed to assign the lock to one of the requesting threads. Accordingly, prolonged ownership of a lock operation by a thread is encouraged to mitigate use of atomic operations in granting of the lock to a non-owning thread.
摘要:
It is one object of the present invention to provide effective optimization for a program that includes commands that may cause exception processes. A novel compiler for converting source code for a program written in a programming language into object code in a machine language comprises: an optimization execution unit for performing an optimization process for an object program written in a machine language; and a pre-processor and a post-processor for modifying the object program in order to absorb a difference in content between the point of origin of an exception process, which occurs in response to the execution of a command in the object program, and a location whereat the exception process is performed.
摘要:
In a multiprocessor computer system, a lock operation is maintained with a thread using non-atomic instructions. Identifiers are assigned to each thread. Flags in conjunction with the thread identifiers are used to determine the continuity of the lock with a thread. However, in the event continuity of the lock with the thread ceases, a compare-and-swap operation is executed to reset the lock with the same thread or another thread. Similarly, in the event there has been a collision between two or more threads requesting the lock, a compare-and-swap operation is executed to assign the lock to one of the requesting threads. Accordingly, prolonged ownership of a lock operation by a thread is encouraged to mitigate use of atomic operations in granting of the lock to a non-owning thread.