[go: up one dir, main page]
More Web Proxy on the site http://driver.im/

KR101462053B1 - Apparatus For File Input/Output - Google Patents

Apparatus For File Input/Output Download PDF

Info

Publication number
KR101462053B1
KR101462053B1 KR1020130131787A KR20130131787A KR101462053B1 KR 101462053 B1 KR101462053 B1 KR 101462053B1 KR 1020130131787 A KR1020130131787 A KR 1020130131787A KR 20130131787 A KR20130131787 A KR 20130131787A KR 101462053 B1 KR101462053 B1 KR 101462053B1
Authority
KR
South Korea
Prior art keywords
file
input
disk
data
output
Prior art date
Application number
KR1020130131787A
Other languages
Korean (ko)
Inventor
박근태
안성화
이재영
최승운
Original Assignee
에스케이 텔레콤주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 에스케이 텔레콤주식회사 filed Critical 에스케이 텔레콤주식회사
Priority to KR1020130131787A priority Critical patent/KR101462053B1/en
Application granted granted Critical
Publication of KR101462053B1 publication Critical patent/KR101462053B1/en

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0629Configuration or reconfiguration of storage systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0628Interfaces specially adapted for storage systems making use of a particular technique
    • G06F3/0638Organizing or formatting or addressing of data
    • G06F3/0643Management of files
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/06Digital input from, or digital output to, record carriers, e.g. RAID, emulated record carriers or networked record carriers
    • G06F3/0601Interfaces specially adapted for storage systems
    • G06F3/0668Interfaces specially adapted for storage systems adopting a particular infrastructure
    • G06F3/0671In-line storage system
    • G06F3/0673Single storage device
    • G06F3/0674Disk device

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

A file input and output (I/O) apparatus is disclosed. The file input and output apparatus includes: a file I/O request unit which receives a file I/O request including a path to a file, a starting position of requested data in the file, and the length of the requested data; at least one disk which stores files; an I/O request distribution unit which distributes the file I/O request to each disk where a file requested to be inputted or outputted is stored; an I/O storage structure set unit which includes at least one disk I/O storage structure that is respectively provided to correspond to each disk in order to sequentially process the file I/O request distributed to each disk; a disk management unit which includes at least one disk manager that extracts a pending request for inputting or outputting the file from the I/O storage structure set unit, and that reads data from a disk where the file is stored; and a file data manager which receives, from the disk manager, the data corresponding to the request for inputting or outputting the file.

Description

[0001] Apparatus For File Input / Output [

The present invention relates to a file input / output device.

It should be noted that the following description merely provides background information related to the present embodiment and does not constitute the prior art.

When a plurality of processes or threads request input / output (I / O) to the same disk at the same time, a bottleneck occurs in the process of inputting / outputting data from / to the disk , Which results in degradation of the system performance. When a plurality of processes or threads request input / output to the same disk at the same time, the operating system must process a plurality of input / output requests sequentially. The more I / O on the disk, the longer the process or thread waits for I / O.

Therefore, there is a need to improve overall system and individual process or thread throughput by reducing I / O to disk and reducing I / O latency.

The main object of the present embodiment is to provide a file input / output device that improves the performance of input / output on a disk.

According to an aspect of the present invention, there is provided a file input / output request unit for receiving a file input / output request including a path of a file, a start offset of request data in the file, and a length of the request data; At least one disk storing a file; An input / output request distribution unit for distributing an input / output request of the file for each disk in which an input / output requested file is stored; An input / output storage structure set including at least one disk input / output storage structure corresponding to each disk for sequentially processing input / output requests distributed for each disk; A disk manager including at least one disk manager for extracting an input / output request of the file from the disk I / O storage structure and reading data from the disk on which the file is stored; And a file data manager for receiving data corresponding to an input / output request of the file from the disk manager.

According to another aspect of the present invention, there is provided a method of managing a file, comprising: receiving an input / output request of a file; Distributing an input / output request of the file to a disk input / output storage structure corresponding to a disk storing the file; Extracting an input / output request of the file from the disk input / output storage structure, reading data corresponding to an input / output request of the file from the disk, and storing the read data in a buffer of a disk manager corresponding to the disk; Storing in a buffer of the disk manager in a block data buffer in a data file data manager corresponding to an input / output request of the file; And transferring data corresponding to an input / output request of the file stored in the block data buffer.

As described above, according to the present embodiment, even if a plurality of processes or threads request input / output of files stored on the same disk, if the data is buffered, the data stored in the buffer is transferred to the disk access The problem of bottleneck due to disk input / output can be solved. Thus, even if multiple processes or threads request I / O to the same disk at the same time, they can be processed sequentially in the disk I / O storage structure, and the performance of the entire system and each process or thread There is an effect that can be improved.

FIG. 1A is an example of a state in which a plurality of processes perform a plurality of input / output operations on a plurality of disks.
1B is an exemplary diagram illustrating a state in which a plurality of processes according to the present embodiment perform a plurality of input / output operations on a plurality of disks.
2 is a configuration diagram of a file input / output device according to the present embodiment.
3A and 3B are flowcharts of a file input / output process in the file input / output device according to the present embodiment.

Hereinafter, the present embodiment will be described in detail with reference to the accompanying drawings.

Hereinafter, a data structure for storing an input / output request to a file will be described using a queue. However, the structure for storing input / output requests is not limited to queues, and various data structures are used. can do. The data structure for storing the I / O request is a queue having a first-in-first-out (FIFO) characteristic, but it is not necessarily first-in-first-out. The input / output can be performed prior to the inserted input / output request considering the priority or the like even if the input / output request is inserted later in the data structure for storing the input / output request. In addition, the disk described below may include various kinds of storage devices including a hard disk.

FIG. 1A is an example of a state in which a plurality of processes perform a plurality of input / output operations on a plurality of disks.

FIG. 1A is a block diagram illustrating a system in which a plurality of processes or threads are accessed by a process or a thread on a disk in which a file is located and a plurality of input / output (I / O) ) Are generated at the same time. In this case, there is a time delay for input / output in the disk, and a process or a thread must wait for other operations in the system for input / output. If a lot of input / output is waiting in the system, (Bottle Neck) occurs.

1B is an exemplary diagram illustrating a state in which a plurality of processes according to the present embodiment perform a plurality of input / output operations on a plurality of disks.

In FIG. 1B, an I / O request is inserted into a disk I / O queue corresponding to each disk, and a file input / output is sequentially performed in the disk I / O queue do. When the file input / output device according to the present embodiment includes a plurality of disks, each disk may include a disk input / output queue for each disk. The disk I / O queue allows the I / O to be sequentially performed on the disk, buffering the input / output data of the disk to prevent a large number of I / O conflicts, thereby reducing the system delay, The performance in each process can be improved.

2 is a configuration diagram of a file input / output device according to the present embodiment.

2, the file input / output device 200 includes a file input / output request unit 210, an input / output request distribution unit 220, an input / output queue set unit 230, a disk management unit 240, a disk 1 250, , A disk 3 (251), and a file data manager (260). The configuration of the input / output queue set unit 230, the disk management unit 240, the disk, and the file data manager 260 in the file input / output device 200 of FIG. 2 is an embodiment, and is not limited thereto.

The file input / output request unit 210 opens a file to be input / output and generates a file data manager 260 for performing block-based input / output. When the process or thread opens the file, the input / output request unit 210 waits until the requested data is input to the block data buffer 262 of the file data manager 260. An input / output request to a file of the file input / output request unit 210 includes a path of a file, a start point of requested data in the file, and length information of requested data.

Meanwhile, the input / output request unit 210 may transmit an input / output request to the input / output request distribution unit 220. A method of buffering data and transferring it from a memory without accessing the disk will be described in detail with reference to FIGS. 3A and 3B.

The input / output request distribution unit 220 inserts a file input / output request into a disk input / output queue corresponding to the disk in which the file in the input / output queue set unit 230 is located. The disk on which the file is located can be found through the path of the file when the file is opened. Big data processing systems usually mount one disk to the system and use it as a single disk even if it is a RAID-organized disk.

The I / O queue setting unit 230 may include a disk input / output queue corresponding to each disk included in the system, and may include a disk input / output queue corresponding to a plurality of disks. 2, a disk input / output queue 232 corresponding to the disk 1 250, a disk input / output queue 234 corresponding to the disk 2 252, a disk input / output queue 3 236 corresponding to the disk 3 254, . The input / output request distribution unit 220 inserts an input / output request for a file into a disk input / output queue corresponding to a disk on which a file is located, among the disk input / output queues in the input / output queue set unit 230.

The disk manager 240 has a disk manager corresponding to each disk for managing input / output of each disk. The disk manager 240 sequentially extracts input / output requests for a file from the disk I / O queue and performs input / output by a predetermined amount of input / output data . 2, there is a disk manager 1 242 corresponding to the disk 1 250. The disk manager 1 242 corresponds to the disk input / output queue 1 232 and the disk manager 2 242 corresponding to the disk 2 252 The disk manager 2 244 corresponds to the disk I / O queue 2 234, the disk manager 3 246 corresponds to the disk 3 254, and the disk manager 3 246 corresponds to the disk I / 2 (234).

The operating system generally performs input / output in units of blocks of a predetermined size. For the description of this embodiment, the case where the operating system performs input / output in units of 128 Kbytes will be described as an example. The operating system performs 128 Kbytes of input / output in the disk input / output stage and performs the input / output of the 128 Kbytes block several times in the case of the larger input / output requests, even if there is an input / output request of less than 128 Kbytes in the process. However, when the processor requests input / output for a specific location of a specific file, it is very likely to request the next block adjacent to a specific location of the specific file. By buffering the data of the next block in the memory by utilizing this characteristic in the input / output of the file, it is possible to reduce the number of actual disk accesses and reduce the system delay due to input / output by performing input / output in the memory. The disk management unit 240 improves the performance of the system through data buffering that performs input / output in units larger than the data input / output block unit of the operating system. Hereinafter, the disk manager in the disk management unit 240 sets the size of the data input / output data to 8 Mbytes.

According to the experiment according to this embodiment, in the experiment in which the size of the data file is 724 Mbytes and 10 processes simultaneously request input and output of the same disk, according to the conventional method, the input / output speed is 27 Mbytes / sec. When the size of the input / output unit of the management unit 240 is 8 Mbytes, the input / output speed is 69.6 Mbytes / sec.

The disk manager reads the data from the disk by a predetermined input / output data size even if the request is smaller than the predetermined input / output data size, and when the size of the requested data is larger than the preset size of the input / output data, Perform input and output multiple times. When a disk manager performs input / output of a predetermined size of input / output data several times, the disk manager inserts an I / O request to be performed next in the disk I / O queue corresponding to the disk manager to perform a plurality of I / Wait for input and output.

When the disk manager completes the input / output, the disk manager transfers the data to the file data manager 260, and the file data manager stores the data in the block data buffer 262. In this case, the unit of data to be stored is smaller than the size of data input / output from the disk manager, and the input / output block size used by the operating system can be used. In this embodiment, the input / output block size of the block data buffer 262 is 128 Kbytes. According to this, the disk manager performs the input / output in the block data buffer 262 in units of 128 Kbytes. Even if the file input / output request unit 210 makes a request smaller than 128 Kbytes, 128 Kbytes corresponding to the requested data is stored in the block data buffer 262, and 128 Kbytes is stored even if the requested data is larger than 128 Kbytes.

The file data manager 260 includes a block data buffer 262 that is created when the file is opened in the file input / output request unit 210 and stores data received from the disk management unit 240, And analyzes the data stored in the file input / output unit 262 and transfers the data stored in the block unit by the requested data size in the file input / output request unit 210. The file input / output request unit 210 can receive data even if it does not directly read from the disk when requesting the file to the file data manager 260 within the 128 Kbytes size. If the file input / output request unit 210 is larger than 128 Kbytes but smaller than 8 Mbytes, Since the disk manager corresponding to the disk on which the file of the file 240 is stored is stored in the disk manager. If the file data is accessed from a buffer in the memory without directly accessing the disk, system delay due to input / output can be prevented.

The file input / output device 200 according to the embodiment of the present invention may be a personal computer (PC), a notebook computer, a tablet, a personal digital assistant (PDA), a game console, a portable multimedia player Such as a portable multimedia player (PSP), a PlayStation Portable (PSP), a wireless communication terminal, a smart phone, a TV, a media player, Output transmitting device 200. [0031] FIG. The file input / output transfer apparatus 200 according to the embodiment of the present invention may be a server terminal such as an application server and a service server. The file input / output device 200 according to the embodiment of the present invention may include (i) a communication device such as a communication modem for performing communication with various devices or wired / wireless communication networks, (ii) a memory for storing data for executing a program, , (iii) a microprocessor for executing and controlling a program, and the like. According to at least one embodiment, the memory may be a computer such as a random access memory (RAM), a read only memory (ROM), a flash memory, an optical disk, a magnetic disk, or a solid state disk Readable recording / storage medium. According to at least one embodiment, a microprocessor can be programmed to selectively perform one or more of the operations and functions described in the specification. In accordance with at least one embodiment, the microprocessor may be implemented in hardware, such as an Application Specific Integrated Circuit (ASIC), in wholly or partially of a particular configuration.

3A and 3B are flowcharts of a file input / output process in the file input / output device according to the present embodiment.

The file input / output request unit 210 requests data of a part or all of the file. When requesting the file data, the file input / output request including the path of the file, the start position (Offset) of the request data in the file, and the length information of the request data is received (S310) The file data manager 260 waits for input / output until data is stored in the block data buffer 262 of the file data manager 260 (S320).

In step S330, it is determined whether additional data is requested while the file requested to be input / output is opened or whether a file is newly opened to request data. The file data manager 260 checks whether the data is cached in the buffer of the block data buffer 262 in step S340 and if the file data manager 260 requests data in the open state, If it is not cached, it is checked whether or not it is cached in the disk manager (S342).

The file input / output request unit 210 may receive data from the file data manager if data is cached in the file data manager 260 (S380). In this case, the file input / output request unit 210 does not need to transmit an input / output request to the input / output request distribution unit 220. If the data is cached in the disk manager, the file data manager 260 requests data from the disk manager (S344), and the disk manager transfers the data to the file data manager 260 (S370) Stores the data in the block data buffer 262. In this case, the file input / output request unit 210 does not need to transmit the input / output request to the input / output request distribution unit 220. The file input / output request unit 210 receives the data stored in the block data buffer 262 from the file data manager 260 (S380).

If the data is not cached in the disk manager in the disk management unit 240, the disk manager can forward the file input / output request to the input / output request distribution unit 220. Similarly to the case where the file is newly opened, Output request distribution unit 220 to the input / output request distribution unit 220 in step 210. If the file input / output request unit 210 waits for the data to be received from the file data manager 260, the file input / output request unit 210 searches for a path of the file, O request to the I / O request distribution unit 220. The I / O request distribution unit 220 determines the disk on which the file is located by using the path information of the file, Output request to the disk I / O queue within the I / O queue set corresponding to the disk where the file is located (S350). The file I / O requests inserted into the disk I / O queue are sequentially processed in a queue (S360). When a part of the data requested from the file input / output request unit 210 is in the block data buffer 262 or the buffer of the disk manager, only the remaining data except the data in the buffer of the block data buffer 262 or the disk manager Can be requested.

The disk manager corresponding to the disk in which the file in the disk management unit 240 is located extracts the file I / O request from the disk I / O queue in the I / O queue set unit 230 corresponding to the disk on which the file is located, Read. The size that the disk manager has read data from the disk can be read by the size of the buffer which is a predetermined input / output unit. In operation S362, the operating system reads data from the disk by the unit of the buffer set by the operating system, but reads data by the unit size of the buffer included in the disk manager.

If the size of the requested data in the file input / output request unit 210 is larger than the size of the input / output unit set in the disk manager, the size of the requested data is divided by the size of the buffer, which is the size of the input / output unit to determine whether the quotient is 0 or 1, (S366). If the request data size is smaller than the size of the buffer (S366), the request for the unread portion is inserted into the disk I / O queue (S367) (S360).

The disk manager reads all the data from the disk and stores the data in the buffer in the disk manager in step S368 and transfers the data to the file data manager 260 in block units of the file data manager 260 in step S370. The file data manager 260 stores the received data in the block data buffer 262. The file input / output request unit (S380) receives the data stored in the block data buffer (262) (S380). At this time, the file input / output request unit (S380) can interpret the raw data stored in the disk in the form of text or the like, and transmits the data of the requested data length in the block unit data.

The foregoing description is merely illustrative of the technical idea of the present embodiment, and various modifications and changes may be made to those skilled in the art without departing from the essential characteristics of the embodiments. Therefore, the present embodiments are to be construed as illustrative rather than restrictive, and the scope of the technical idea of the present embodiment is not limited by these embodiments. The scope of protection of the present embodiment should be construed according to the following claims, and all technical ideas within the scope of equivalents thereof should be construed as being included in the scope of the present invention.

200 File I / O Device 210 File I /
220 I / O request distribution unit 230 I /
240 Disk management unit 250 Disk
260 File Data Manager

Claims (11)

A file input / output request unit for receiving an input / output request of a file including a path of a file, a start position (Offset) of request data in the file, and a length of the request data;
At least one disk storing a file;
An input / output request distribution unit for distributing an input / output request of the file for each disk in which an input / output requested file is stored;
An input / output storage structure set including at least one disk input / output storage structure corresponding to each disk for sequentially processing input / output requests distributed for each disk;
A disk manager including at least one disk manager for extracting an input / output request of the file from the disk I / O storage structure and reading data from the disk on which the file is stored; And
A file data manager for receiving data corresponding to an input / output request of the file from the disk manager;
The file input / output device comprising:
The method according to claim 1,
Wherein the disk management unit includes a disk manager corresponding to each disk, and the input / output storage structure aggregation unit includes a disk input / output storage structure corresponding to each disk manager.
The method according to claim 1,
The file input /
The file requested to be input / output is opened,
Generates the file data manager,
And transfers the file input / output request to the file data manager.
The method according to claim 1,
Wherein the input /
A disk in which the file requested to be input / output is stored,
Wherein the file input / output unit inserts the input / output request of the file into the disk input / output storage structure in the input / output storage structure set unit corresponding to the disk storing the input / output requested file.
The method according to claim 1,
The disk manager allocates a buffer of a predetermined buffer size of a disk manager for storing data,
Wherein the disk manager reads data from the disk corresponding to the disk manager with the predetermined buffer size and stores the read data in the buffer.
6. The method of claim 5,
Wherein the controller inserts a request for a portion exceeding the predetermined buffer size into the disk I / O storage structure corresponding to the disk manager when the length of the requested data exceeds the preset buffer size.
The method according to claim 1,
Wherein the file data manager includes a block data buffer for storing data corresponding to an input / output request of the file,
Wherein the block data buffer is input / output at a predetermined block size of the block data buffer.
8. The method of claim 7,
The file data manager,
Receiving data corresponding to an input / output request of the file from the disk manager by the predetermined block size,
When the length of the requested data is larger than the predetermined block size, the data is repeatedly received at the predetermined block size until the size of the data received from the disk manager is equal to or greater than the length of the requested data. File input / output device.
The method according to claim 1,
The file data manager,
When the data corresponding to the input / output request of the file is stored in the block data buffer and the data corresponding to the input / output request of the file is stored in the block data buffer, the data corresponding to the input / In the block data buffer.
10. The method of claim 9,
The file data manager,
When data corresponding to an input / output request of the file is not stored in the block data buffer and there is data corresponding to an input / output request of the file in a buffer in a disk manager corresponding to the disk where the file is located, Output request to the file input / output request unit, and transfers the data to the file input / output request unit.
Receiving a file input / output request;
Distributing an input / output request of the file to a disk input / output storage structure corresponding to a disk storing the file;
Extracting an input / output request of the file from the disk input / output storage structure, reading data corresponding to an input / output request of the file from the disk, and storing the read data in a buffer of a disk manager corresponding to the disk;
Storing in a buffer of the disk manager in a block data buffer in a data file data manager corresponding to an input / output request of the file; And
A step of transmitting data corresponding to an input / output request of the file stored in the block data buffer
And outputting the file.
KR1020130131787A 2013-10-31 2013-10-31 Apparatus For File Input/Output KR101462053B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020130131787A KR101462053B1 (en) 2013-10-31 2013-10-31 Apparatus For File Input/Output

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020130131787A KR101462053B1 (en) 2013-10-31 2013-10-31 Apparatus For File Input/Output

Publications (1)

Publication Number Publication Date
KR101462053B1 true KR101462053B1 (en) 2014-11-17

Family

ID=52290643

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020130131787A KR101462053B1 (en) 2013-10-31 2013-10-31 Apparatus For File Input/Output

Country Status (1)

Country Link
KR (1) KR101462053B1 (en)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07248883A (en) * 1994-03-11 1995-09-26 Nec Corp Prior buffer flash system
KR20110088287A (en) * 2010-01-28 2011-08-03 주식회사 우리씨에스티 The high performance video on demand server using storage access scheduling technology

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH07248883A (en) * 1994-03-11 1995-09-26 Nec Corp Prior buffer flash system
KR20110088287A (en) * 2010-01-28 2011-08-03 주식회사 우리씨에스티 The high performance video on demand server using storage access scheduling technology

Similar Documents

Publication Publication Date Title
US10649969B2 (en) Memory efficient persistent key-value store for non-volatile memories
CN112527730A (en) System, apparatus and method for processing remote direct memory access operations with device attached memory
WO2016011894A1 (en) Message processing method and apparatus
US8255593B2 (en) Direct memory access with striding across memory
US20180157418A1 (en) Solid state drive (ssd) memory cache occupancy prediction
US8429315B1 (en) Stashing system and method for the prevention of cache thrashing
US10657087B2 (en) Method of out of order processing of scatter gather lists
US9336153B2 (en) Computer system, cache management method, and computer
US10805392B2 (en) Distributed gather/scatter operations across a network of memory nodes
CN107154013A (en) Additional card, content delivery network server and execution method for image procossing
WO2019061270A1 (en) Data caching device and control method therefor, data processing chip, and data processing system
CN102314400B (en) Method and device for dispersing converged DMA (Direct Memory Access)
US20190146935A1 (en) Data transfer device, arithmetic processing device, and data transfer method
US9311044B2 (en) System and method for supporting efficient buffer usage with a single external memory interface
WO2016019554A1 (en) Queue management method and apparatus
CN105589664A (en) Virtual storage high-speed transmission method
WO2017210015A1 (en) Improving throughput in openfabrics environments
KR102523418B1 (en) Processor and method for processing data thereof
US9781225B1 (en) Systems and methods for cache streams
US9137167B2 (en) Host ethernet adapter frame forwarding
CN106201918A (en) A kind of method and system quickly discharged based on big data quantity and extensive caching
US10061513B2 (en) Packet processing system, method and device utilizing memory sharing
KR102334473B1 (en) Adaptive Deep Learning Accelerator and Method thereof
KR101462053B1 (en) Apparatus For File Input/Output
CN110399219B (en) Memory access method, DMC and storage medium

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20171102

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20181105

Year of fee payment: 5