Patentable/Patents/US-6687764
US-6687764

File I/O control method

PublishedFebruary 3, 2004
Assigneenot available in USPTO data we have
Inventorsnot available in USPTO data we have
Technical Abstract

In collective I/O processing in which a plurality of processes access the same file in a shared manner, when each user process issues an I/O request, the user process notifies the system of information on a file region accessed by all the processes; information for specifying whether or not a prefetch is performed, and information for specifying whether or not a disk preallocate is performed, together with the I/O requests issued by all associated processes, as hint information. The system provides a buffer for storing data in a file region accessed by all the processes based on the hint information, such that the I/O processing for all the processes is performed using this buffer.

Patent Claims
19 claims

Legal claims defining the scope of protection, as filed with the USPTO.

1

1. A file I/O control method for use by a plurality of processes to access the same file in a shared manner, comprising the steps of: notifying a file management server from each of said plurality of processes of a file I/O request of the process, and hint information including information on a file region accessed by all of said plurality of processes; providing a buffer for performing an I/O operation to and from the file region notified by the hint information in said file management server; when a file I/O request from each of said plurality of processes is a file read request, reading data in the file region specified by the hint information from a disk into said provided buffer, and after reading the data from said disk, intermemory-copying data in a memory region in said provided buffer, corresponding to a file I/O request first issued by a process, into a data region specified by said process which first issues the file I/O request; when the file I/O request from each of said plurality of processes is a file write request, intermemory-copying data from a data region specified by each process by the file I/O request into a region in said provided buffer corresponding to the request of the process to complete a file write for each process; and after intermemory-copying the data from all of said plurality of processes, writing the data in said provided buffer into a file region in a disk notified by the hint information.

2

2. A file I/O control method according to claim 1 , wherein said buffer provided by said file management server is provided when a first one of said plurality of processes notifies the hint information, and discarded when a last one of said plurality of processes terminates a file I/O request.

3

3. A file I/O control method according to claim 1 , wherein each of said processes notifies said file management server of the hint information simultaneously with an I/O request or prior to the I/O request.

4

4. A file I/O control method according to claim 1 , wherein when the file I/O request from each of said processes is a file read request, data is read from a file region in a disk specified by the hint information for said provided buffer when the first one of said plurality of processes notifies said file management server of the hint information.

5

5. A file I/O control method according to claim 1 , wherein a file I/O request notified from each of said processes is completed at the time at which the intermemory-copy is completed between said buffer provided by said file management server and a data region specified by each process irrespective of whether or not a file I/O request from another process is notified to said file management server.

6

6. A file I/O control method according to claim 1 , wherein the hint information notified by each of said processes includes a hold time of said buffer provided by said file management server, and said file management server holds said provided buffer until the file I/O requests notified by all of said plurality of processes are completed or until the hold time included in the hint information expires.

7

7. A file I/O control method according to claim 1 , wherein the hint information notified by each of said processes includes information for specifying whether or not a prefetch is performed prior to issuance of a file read request or information for specifying whether or not a disk preallocate is performed prior to issuance of a file write request, wherein said file management server previously reads data in a specified file region from a disk to said buffer provided by said file management server when the hint information specifies execution of the prefetch, and said file management server previously reserves a region for storing all data associated with said plurality of processes on a disk when the hint information specifies execution of the preallocate.

8

8. A file management server for enabling a plurality of processes to access the same file in a shared manner, comprising: means for receiving hint information including a file I/O request from each of said plurality of processes, and information on a file region accessed by all of said plurality of processes; means for reserving a buffer for holding data in the file region notified by the hint information, said file region being accessed by all of said plurality of processes; means for collectively reading the data in the file region specified by the hint information, said file region being accessed by all of said plurality of processes, from a disk to said reserved buffer when the file I/O request from each of said plurality of processes is a file read request; means for collectively writing the contents of said buffer into a disk when the file I/O request from each of said plurality of processes is a file write request; and means for completing file I/O processing when a file I/O request is issued from each process by intermemory-copying data between a data region of said process and a region of said buffer corresponding thereto.

9

9. A file management server according to claim 8 , further comprising: means for receiving information for specifying whether or not a prefetch is performed prior to issuance of a file read request included in the hint information notified by each of said processes, or information for specifying whether or not a disk preallocate is performed prior to issuance of a file write request; means for previously reading data from a disk to said buffer asynchronously with the processing of said process when the hint information specifies execution of the prefetch; and means for performing the disk region preallocate asynchronously with the processing of said process when the hint information specifies execution of the preallocate.

10

10. A parallel computing system for operating in concert a plurality of processes which execute a parallel program to perform computations, said parallel computing system comprising the file management server according to claim 8 , wherein when said plurality of processes executing said parallel program simultaneously access the same file, each of said processes notifies a file management server of hint information including information on a file region accessed by all of said plurality of processes not later than issuance of a file I/O request issued by said each process.

11

11. A file I/O control method in a parallel computing system having a plurality of computing nodes and at least one I/O node, said method comprising the steps of: executing a plurality of processes on said plurality of computing nodes, respectively; based on hint information indicative of a data block required by a plurality of collective I/O read requests for reading the same file from said plurality of processes, reserving a buffer in said I/O node for a portion of said data block held by said I/O node, out of said data block indicated by said hint information; responding to a first collective I/O read request by writing said data block held by said I/O node into said buffer in response to said first collective I/O read request, and reading a data block corresponding to said first collective I/O read request from said data block written into said buffer; and responding to a subsequent collective I/O read request by reading a data block corresponding to said collective I/O read request from said data block written into said buffer.

12

12. A file I/O control method according to claim 11 , wherein said hint information is added to each said collective I/O read request.

13

13. A file I/O control method according to claim 11 , wherein said hint information is issued to said I/O node prior to each said collective I/O read request.

14

14. A file I/O control method in a parallel computing system having a plurality of computing nodes and at least one I/O node, said method comprising the steps of: executing a plurality of processes on said plurality of computing nodes, respectively; based on hint information indicative of a data block required by a plurality of collective I/O write requests for writing the same file from said plurality of processes, reserving a buffer in said I/O node for a portion of said data block held by said I/O node, out of said data block indicated by said hint information; responding to each of said plurality of collective I/O write requests to write a data block associated with the collective I/O write request into a region of said buffer for the collective I/O write request; and holding the data block written into said buffer in said I/O node after writing a data block into said buffer associated with a last collective I/O write request.

15

15. A file I/O control method according to claim 14 , wherein said hint information is added to each said collective I/O write request.

16

16. A file I/O control method according to claim 14 , wherein said hint information is issued to said I/O node prior to each said collective I/O write request.

17

17. A file I/O control method in a parallel computing system having a plurality of computing nodes and at least one I/O node, said method comprising the steps of: executing a plurality of processes on said plurality of computing nodes, respectively; based on hint information indicative of a data block required by a plurality of collective I/O requests for accessing the same file from said plurality of processes, reserving a buffer in said I/O node for a portion of said data block held by said I/O node, out of said data block indicated by said hint information; and responding to each of said plurality of collective I/O requests by accessing a region of said buffer corresponding to the collective I/O request.

18

18. A file I/O control method according to claim 17 , wherein said hint information is added to each said collective I/O request.

19

19. A file I/O control method according to claim 17 , wherein said hint information is issued to said I/O node prior to each said collective I/O request.

Classification Codes (CPC)

Cooperative Patent Classification codes for this invention. Click any code to explore related patents in that topic.

Patent Metadata

Filing Date

December 21, 2001

Publication Date

February 3, 2004

Want to explore more patents?

Browse 5M+ US patents with plain-English claim translations and AI-generated analysis.

Citation & reuse

Analysis on this page is generated by Patentable — an AI-powered patent intelligence platform. AI-generated summaries, explanations, and analysis may be reused with attribution and a visible link back to the canonical URL below. Patent abstracts and claims are USPTO public domain.

Cite as: Patentable. “File I/O control method” (US-6687764). https://patentable.app/patents/US-6687764

© 2026 Patentable. All rights reserved.

Patentable is a research and drafting-assistant tool, not a law firm, and does not provide legal advice. Documents we generate are drafts for review by a licensed patent attorney.