IP Library Granted Patent US 12699555
Granted Patent B2
US 12699555 · App. 18/595,822 · Granted Aug 4, 2026

Method and system for compiling applications

Inventors: Gangwon Jo (Seoul, KR); Jungho Park (Seoul, KR)
Assignee: MOREH CORP
G06F8/443
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12699555
App. No.
18/595,822
Granted
Aug 4, 2026
Kind
B2
Abstract

The disclosure relates to a method for compiling an application, in which the method is executed by one or more processors, and includes initiating generating a first intermediate representation for a first part of an application, while generating the first intermediate representation, stopping generating the first intermediate representation if it is determined that a number of operation nodes included in the first intermediate representation reaches an interval value, and compiling the generated first intermediate representation.

Claims (69)

1 . A method performed by a first processor, the method comprising:

initiating generation of a first intermediate representation for a first part of an application;

stopping generation of the first intermediate representation, wherein the stopping the generation of the first intermediate representation is based on:

a number of operation nodes of the first intermediate representation reaching an interval value while generating the first intermediate representation; or

a generation of an operation node corresponding to a predefined operation type;

compiling the generated first intermediate representation;

initiating generation of a second intermediate representation for a second part of the application different from the first part of the application, wherein the generation of the second intermediate representation for the second part is performed during a time in which at least a part of the compiled first intermediate representation is executed by a second processor; and

stopping, based on a number of operation nodes of the second intermediate representation reaching the interval value while generating the second intermediate representation, generation of the second intermediate representation.

2 . The method according to claim 1 , further comprising:

compiling the generated second intermediate representation.

3 . The method according to claim 1 , further comprising:

sending the compiled first intermediate representation to the second processor.

4 . The method according to claim 1 , further comprising:

sending the compiled first intermediate representation to the second processor; and

receiving an execution result for at least a part of the compiled first intermediate representation from the second processor.

5 . The method according to claim 4 , wherein an initial value of the interval value is set to a predetermined maximum value,

wherein the predefined operation type corresponds to a response waiting operation,

wherein the stopping generation of the first intermediate representation comprises: in response to the generation of the operation node corresponding to the response waiting operation, changing the interval value to a predetermined minimum value, and

wherein the method further comprises: stopping, based on a number of operation nodes of the second intermediate representation reaching the predetermined minimum value while generating the second intermediate representation, generation of the second intermediate representation.

6 . The method according to claim 4 , further comprising:

completing generation of a plurality of subsequent intermediate representations for remaining parts of the application;

compiling the plurality of subsequent intermediate representations; and

sending the compiled plurality of subsequent intermediate representations, to the second processor for execution by the second processor.

7 . The method according to claim 6 , further comprising:

until the completing generation of the plurality of subsequent intermediate representations, repeating initiating generation of at least one intermediate representation for at least one part of the application for which no intermediate representation has been generated, stopping the generation of the at least one intermediate representation, the compiling the at least one intermediate representation, and sending the compiled at least one intermediate representation.

8 . The method according to claim 7 , wherein an initial value of the interval value is set to a predetermined maximum value,

wherein the stopping the generation of the first intermediate representation comprises: based on a generation of an operation node corresponding to a response waiting operation included in the application, stopping generation of the first intermediate representation before the number of operation nodes of the first intermediate representation reaching the interval value.

9 . The method according to claim 7 , wherein the repeating comprises:

based on a generation of an operation node corresponding to a response waiting operation included in the application, changing the interval value to a predetermined minimum value; and

until a second operation node corresponding to the response waiting operation included in the application is generated or until the interval value reaches a predetermined maximum value, whichever is earlier, increasing the interval value in response to completing generation of an intermediate representation for a part of the application.

10 . The method according to claim 9 , wherein the increasing the interval value comprises increasing the interval value by a predetermined number or by a predetermined ratio.

11 . The method according to claim 3 , further comprising determining the interval value based on an idle time of the second processor.

12 . An information processing system, comprising:

one or more processors; and

memory storing instructions that, when executed by the one or more processors, cause the information processing system to:

initiate generation of a first intermediate representation for a first part of an application;

stop generation of the first intermediate representation, wherein stopping the generation of the first intermediate representation is based on:

a number of operation nodes of the first intermediate representation reaching an interval value while generating the first intermediate representation; or

a generation of an operation node corresponding to a predefined operation type; and

compile the generated first intermediate representation;

initiate generation of a second intermediate representation for a second part of the application different from the first part of the application, wherein the generation of the second intermediate representation for the second part is performed during a time in which at least a part of the compiled first intermediate representation is executed by a second processor; and

stop, based on a number of operation nodes of the second intermediate representation reaching the interval value while generating the second intermediate representation, generation of the second intermediate representation.

13 . The information processing system according to claim 12 , wherein the instructions, when executed by the one or more processors, further cause the information processing system to:

compile the generated second intermediate representation.

14 . The information processing system according to claim 12 , wherein the instructions, when executed by the one or more processors, further cause the information processing system to:

send the compiled first intermediate representation to the second processor.

15 . The information processing system according to claim 12 , wherein the instructions, when executed by the one or more processors, further cause the information processing system to:

send the compiled first intermediate representation to the second processor; and

receive an execution result for at least a part of the compiled first intermediate representation from the second processor.

16 . The information processing system according to claim 15 , wherein an initial value of the interval value is set to a predetermined maximum value,

wherein the predefined operation type corresponds to a response waiting operation,

wherein the stopping generation of the first intermediate representation comprises: in response to the generation of the operation node corresponding to the response waiting operation, changing the interval value to a predetermined minimum value, and

wherein the instructions, when executed by the one or more processors, further cause the information processing system to stop, based on a number of operation nodes of the second intermediate representation reaching the predetermined minimum value while generating the second intermediate representation, generation of the second intermediate representation.

17 . The information processing system according to claim 15 , wherein the instructions, when executed by the one or more processors, further cause the information processing system to:

complete generation of a plurality of subsequent intermediate representations for remaining parts of the application;

compile the plurality of subsequent intermediate representations; and

send the compiled plurality of subsequent intermediate representations to the second processor for execution by the second processor.

18 . One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors of a computing device, cause the computing device to:

initiate generation of a first intermediate representation for a first part of an application;

stop generation of the first intermediate representation, wherein stopping the generation of the first intermediate representation is based on:

a number of operation nodes of the first intermediate representation reaching an interval value while generating the first intermediate representation; or

a generation of an operation node corresponding to a predefined operation type;

compile the generated first intermediate representation;

initiate generation of a second intermediate representation for a second part of the application different from the first part of the application, wherein the generation of the second intermediate representation for the second part is performed during a time in which at least a part of the compiled first intermediate representation is executed by a second processor; and

stop, based on a number of operation nodes of the second intermediate representation reaching the interval value while generating the second intermediate representation, generation of the second intermediate representation.

19 . The one or more non-transitory computer-readable media according to claim 18 , wherein the instructions, when executed by the one or more processors, further cause the computing device to:

compile the generated second intermediate representation.

20 . The one or more non-transitory computer-readable media according to claim 18 , wherein the instructions, when executed by the one or more processors, further cause the computing device to:

send the compiled first intermediate representation to the second processor.