Method and system for dynamically parallelizing application program
First Claim
1. A system for dynamically parallelizing an application program, the system comprising:
- a multi-core controller to assign a unique operation of each of plural threads that are generated while running the application program;
a block generator to generate a data block having a size corresponding to a data area to be processed by the application program, using a block function;
a monitoring unit to monitor the multi-core controller to determine a number of available threads; and
a decision unit to divide the data block using a map function, and to dynamically determine a thread allocation scheme.
1 Assignment
0 Petitions
Accused Products
Abstract
Provided is a method and system for dynamically parallelizing an application program. Specifically, provided is a method and system having multi-core control that may verify a number of available threads according to an application program and dynamically parallelize data based on the verified number of available threads. The method and system for dynamically parallelizing the application program may divide a data block to be processed according to the application program based on a relevant data characteristic and dynamically map the threads to division blocks, and thereby enhance a system performance.
-
Citations
15 Claims
-
1. A system for dynamically parallelizing an application program, the system comprising:
-
a multi-core controller to assign a unique operation of each of plural threads that are generated while running the application program; a block generator to generate a data block having a size corresponding to a data area to be processed by the application program, using a block function; a monitoring unit to monitor the multi-core controller to determine a number of available threads; and a decision unit to divide the data block using a map function, and to dynamically determine a thread allocation scheme. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A method for dynamically parallelizing an application program in a system, the method comprising:
-
generating a data block having a size corresponding to a data area to be processed by the parallel application program, using a block function; determining a number of available threads; dividing the data block using a map function, and dynamically determining a thread allocation scheme; and generating threads according to the thread allocation scheme to allocate the threads to division blocks, respectively. - View Dependent Claims (10, 11, 12, 13, 14, 15)
-
Specification