IP Library Granted Patent US 8,516,441
Granted Patent B2
US 8,516,441 · App. 12/548,751 · Granted Aug 20, 2013

Software optimization device and software optimization method

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 8,516,441
App. No.
12/548,751
Granted
Aug 20, 2013
Kind
B2
Abstract

A software optimization device includes performance data storage unit to store data indicating performance of each system call, corresponding to a plurality of system calls, system call extraction unit to extract a system call described in a program source and similar-system-call detection unit to detect, from among the system calls the data indicating the performance of which is stored in the performance data storage unit, a system call having a function similar to that of the system call extracted by the system call extraction unit and having a performance better than that of the extracted system call.

Claims (20)

1. A software optimization device, comprising a computer which includes a memory, the computer being configured to perform a process including:

storing performance data indicating performance of each system call in the memory, corresponding to a plurality of system calls;

extracting a system call described in a program source; and

detecting, from among the system calls for which the performance data is stored in the memory a system call having a function similar to that of the system call extracted by the extracting and having a performance better than that of the extracted system call;

wherein the performance data of the system call stored in the memory is an amount of power consumed by the system call; and the detecting detects a system call consuming less power than the system call extracted by the extracting; and wherein the performance data of the system call stored in the memory is a number of memory accesses caused by the system call; and the detecting detects a system call causing a smaller number of memory accesses than that caused by the system call extracted by the extracting.

2. The software optimization device according to claim 1 , the process further including:

replacing the system call described in the program source with the system call detected by the detecting, and outputting, as an optimized program source, a program source obtained as a result of the replacing.

3. The software optimization device according to claim 2 , wherein:

the extracting extracts not only the system call described in the program source but also a parameter of the system call;

the process further includes analyzing a use status of the parameter and a variable and determining whether or not the extracted system call can be replaced with the detected system call when the variable corresponding to the extracted parameter is used in the system call detected by the detecting; and

the replacing replaces the system calls, and the outputting outputs the optimized program source when the replacement is determined to be possible in the determining.

4. The software optimization device according to claim 1 , the process further including:

displaying a list of system calls on a display when the detecting detects a plurality of system calls.

5. The software optimization device according to claim 1 , wherein:

the performance data of the system call stored in the memory is a processing time required by the system call; and

the detecting detects a system call requiring a shorter processing time than that required by the system call extracted by the extracting.

6. A software optimization method, comprising:

extracting a system call described in a program source;

by using performance data, stored in a memory, indicating a performance of each system call corresponding to a plurality of system calls, detecting, from among system calls for which the performance data is stored in the memory, a system call having a function similar to that of the system call extracted by the extracting and causing a smaller number of memory accesses than that caused by the system call extracted by the extracting or consuming less power than the system call extracted by the extracting; and

replacing the system call described in the program source with the detected system call, and outputting, as an optimized program source, a program source obtained as a result of the replacement.

Assignments (6)
RELEASE OF SECURITY INTEREST Recorded Mar 16, 2022
From: MUFG UNION BANK, N.A.
To: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
Reel/Frame 059410/0438 →
CORRECTIVE ASSIGNMENT TO CORRECT THE 8647899 PREVIOUSLY RECORDED ON REEL 035240 FRAME 0429. ASSIGNOR(S) HEREBY CONFIRMS THE SECURITY INTERST. Recorded Nov 3, 2020
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 058002/0470 →
ASSIGNMENT AND ASSUMPTION OF SECURITY INTEREST IN INTELLECTUAL PROPERTY Recorded Oct 28, 2019
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: MUFG UNION BANK, N.A.
Reel/Frame 050896/0366 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 2, 2015
From: SPANSION, LLC
To: CYPRESS SEMICONDUCTOR CORPORATION
Reel/Frame 036052/0016 →
SECURITY INTEREST Recorded Mar 21, 2015
From: CYPRESS SEMICONDUCTOR CORPORATION; SPANSION LLC
To: MORGAN STANLEY SENIOR FUNDING, INC.
Reel/Frame 035240/0429 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 11, 2013
From: FUJITSU SEMICONDUCTOR LIMITED
To: SPANSION LLC
Reel/Frame 031205/0461 →