CN111142959A - Computer system and game loading method thereof - Google Patents
Computer system and game loading method thereof Download PDFInfo
- Publication number
- CN111142959A CN111142959A CN201811208242.4A CN201811208242A CN111142959A CN 111142959 A CN111142959 A CN 111142959A CN 201811208242 A CN201811208242 A CN 201811208242A CN 111142959 A CN111142959 A CN 111142959A
- Authority
- CN
- China
- Prior art keywords
- game
- storage
- file
- files
- stage
- Prior art date
- Legal status (The legal status 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 status listed.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44568—Immediately runnable code
- G06F9/44578—Preparing or optimising for loading
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
The invention provides a computer system and a game loading method thereof. The computer system comprises a first storage, a second storage and a processor. The first memory is used for storing a plurality of game files of the game. The second storage has a faster access speed than the first storage. The processor is coupled to the first storage and the second storage. The processor executes the game, stores the corresponding game file in the first storage into the second storage according to the game progress of the game, and accesses the game file stored in the second storage to continue the game progress of the game. Therefore, the loading time of the game scene can be shortened, and the game experience is further improved.
Description
Technical Field
The present invention relates to a game memory access technology, and more particularly, to a computer system and a game loading method thereof.
Background
For game players, the most perceived users experience the fluency of the game screen (e.g., Frame Per Second (FPS)) and the loading time of the game progress (e.g., scene, level.) table (1) is a Solid-State Drive (SSD) (reverse and (NAND) media) for evaluating different storage devices on the premium electronic game platform (the storage devices in this experiment are Hard Disk Drive (HDD), Serial Advanced Technology Attachment (SATA) interface, Solid-State Drive (Non-Volatile Memory Express (NVMe) (NAND media), Intel 900p (3D Xpoint media), Random Access Memory (Random Access Memory, Access) RAM (Random Access Memory), DRAM) media) impact on the gaming experience. From the experimental results, it can be concluded that different storage devices do not have much influence on the game's pole (Benchmark) and average FPS. It can be seen that the largest factor affecting the two factors is not in the storage device. The loading time of the game scene varies with storage devices with different performances. Certainly, hard disks perform the worst on scene load times (the longest load times), which are then NAND-based SSDs. The NVMe of PCIe is a more powerful controller and employs PCIe protocol (higher bandwidth), so that the scene loading performance is better than the SSD of SATA. Next, the better performing storage devices are 3D Xpoint and RAM Disk using higher speed access media. It is known that the response time of the (storage) medium is the most critical factor affecting the loading time of the scene, and the response time grows linearly with the loading time.
Watch (1)
FIG. 1 shows the hardware architecture of a conventional computer system, based on the results of Table (1), the following two conclusions can be drawn. (1) FPS is the instant frame number representation of the game: since the game scene moves fast, the number of frames required to be output per second is quite large, and the output of the instant multi-picture file must be carried out by using a high Access speed medium as a medium, the image Memory (e.g., Video Random Access Memory (VRAM) and the display card Chip (e.g., System on a Chip (SoC)) used by the display card will be the most critical factors affecting the output of the FPS. (2) Game scene loading time: as mentioned in point (1), a large number of icons required for a game in a short time are output to the display through the image memory, and a game loading time elapses before each scene is entered. During the period, the game will extract the materials required by the next game stage from the storage device of the terminal, and the extracted materials will be temporarily stored in the system memory for the image memory to perform real-time data exchange. (3) Game running points: in principle, this value is less objective because the calculated weights of the running scores of the games are different, and as can be seen from the results of this experiment, the scene loading time has almost no influence on the game running score software, so it is likely that this value will be objective when comparing the performances of different platforms. Therefore, if the loading time of the game scene can be shortened, the game experience of the user can be improved.
Disclosure of Invention
In view of the above, the present invention provides a computer system and a game loading method thereof, which temporarily store a game file in a medium with a high access speed to increase the access speed of the game file, thereby reducing the loading time of a game scene.
The computer system comprises a first storage, a second storage and a processor. The first memory is used for storing a plurality of game files of the game. The second storage has a faster access speed than the first storage. The processor is coupled to the first storage and the second storage. The processor executes the game, stores the corresponding game file in the first storage into the second storage according to the game progress of the game, and accesses the game file stored in the second storage to continue the game progress of the game.
The game loading method is suitable for a computer system. The computer system comprises a first storage, wherein the first storage stores a plurality of files of games. The game loading method includes the following steps. A second storage is provided which has a faster access speed than the first storage. The game is executed. And storing the corresponding game file in the first storage into the second storage according to the game progress of the game. Accessing the game file stored in the second storage to continue the game progress of the game.
Based on the above, the computer system and the game loading method thereof according to the embodiments of the invention temporarily store the corresponding game file into another storage with a faster access speed based on the game progress. By loading game files (such as game materials or other game-related files) into the storage with a faster access speed, the loading time of the game scene can be effectively improved compared with the original storage, and the game experience is improved.
In order to make the aforementioned and other features and advantages of the invention more comprehensible, embodiments accompanied with figures are described in detail below.
Drawings
FIG. 1 is a hardware architecture of a conventional computer system.
FIG. 2 is a block diagram of components of a computer system according to an embodiment of the invention.
FIG. 3 is a flowchart of a game loading method according to an embodiment of the invention.
FIG. 4 is a system architecture diagram of a computer system according to an embodiment of the invention.
FIG. 5 is a comparison of block cache (block cache) and file locking (ping) acceleration.
[ notation ] to show
100: computer system
110: first storage
130: second storage
150: processor with a memory having a plurality of memory cells
S310 to S350: step (ii) of
410: optane memory
411: file locking area
413: block cache
420: system memory
430: hard disk
440: display card
441: image memory
443: chip and method for manufacturing the same
460: display device
481: storage driver
483: access control program
G: game machine
GF. GF 1-GFn: game file
S1-S6: level card
511: block caching acceleration
513: file lock acceleration
Detailed Description
FIG. 2 is a block diagram of a computer system 100 according to an embodiment of the invention. Referring to fig. 2, the computer system 100 may be an electronic device such as a desktop computer, a notebook computer, a server, an all-in-one machine (AIO), and the like. The computer system 100 includes at least a first storage 110, a second storage 130, and a processor 150.
The first Storage 110 may be any type of fixed or removable Random Access Memory (RAM), Flash Memory (Flash Memory), Hard Disk Drive (HDD), Solid-State Disk (SSD), non-volatile (non-volatile) Memory (e.g., NVMe, Storage Class Memory (SCM), persistent (persistent) Memory, 3D Xpoint Memory, Magnetoresistive Random Access Memory (MRAM), and the like with nonvolatile Storage characteristics), or the like, or any combination thereof. In the embodiment, the first storage 110 is used for storing data or files such as buffered or permanent data, software modules, operating systems, applications, drivers, game files GF 1-GFn (n is a positive integer, each game file GF 1-GFn of the embodiment may be a file set of a level or a scene, or at least one file) (e.g., game materials, or other game-related files (pictures, music, templates, etc.)), and the detailed contents thereof will be described in the following embodiments.
The implementation of the second storage 130 can refer to the description of the first storage 110, and is not described herein again. It is noted that the second storage 130 according to the embodiment of the present invention has a faster access speed than the first storage 110. For example, the first storage 110 is a hard disk, and the second storage 130 is an SSD. Alternatively, the first storage 110 is an SSD and the second storage 130 is a 3DXpoint memory. The user can adjust the types of the first storage 110 and the second storage 130 according to the actual requirement, but the invention is not limited thereto. The second storage 130 may also be used for storing buffered or persistent data, software modules, applications, drivers, operating systems, etc. and for storing game files GF 1-GFn of the game G, the detailed operation of which will be described in the following embodiments.
The processor 150 is coupled to the first storage 110 and the second storage 130, and may be a Central Processing Unit (CPU), or other programmable general purpose or special purpose Microprocessor (Microprocessor), Digital Signal Processor (DSP), programmable controller, Application Specific Integrated Circuit (ASIC), or other similar device or combination thereof. In the embodiment of the invention, the processor 150 is used for executing all operations of the computer system 100, and can load and execute the software modules, drivers, files and data recorded in the first and second storages 110 and 130. For example, the processor 150 accesses the game file GF1 for loading into system memory.
To facilitate understanding of the operation flow of the embodiment of the present invention, the loading flow of the computer system 100 to the game G in the embodiment of the present invention will be described in detail below with reference to a plurality of embodiments. Hereinafter, the method according to the embodiment of the invention will be described with reference to the components and modules of the computer system 100. The various processes of the method may be adapted according to the implementation, and are not limited thereto.
FIG. 3 is a flowchart of a game loading method according to an embodiment of the invention. Referring to fig. 3, in response to a user' S opening operation of an application program of the game G through an input device (e.g., a mouse, a keyboard, a touch panel, etc.) of the computer system 100, the processor 150 executes the game G (step S310). For example, the user clicks a shortcut on the desktop of the game G with a mouse. Alternatively, the user presses a key on the keyboard that is preset to quickly start game G.
The processor 150 stores the corresponding game file in the first storage 110 into the second storage 130 according to the progress of the game (step S330). Specifically, as shown in the experimental results of table (1), the scenario loading time is related to the response time of the storage device (i.e. related to the access speed and the interface bandwidth). If the game files GF1 GFn are accessed from the storage device with the higher access speed, the game files GF1 GFn required by the scene or level can be loaded faster than the game files GF1 GFn required by the storage device with the lower access speed. In addition, although all game files GF1 GFn of a game G can be temporarily stored in the storage device with a faster access speed, the storage space of the storage device is utilized because the total file size of the game G is large and the storage device with a faster access speed is generally small in size.
Based on the aforementioned technical idea, the processor 150 reads the game archive records of the game G to obtain the game progress of the user, and stores the game archive records stored in the first storage 110 corresponding to the game files GF1, GF2 … and/or GFn of the current game stage into the second storage 130 according to the remaining space of the second storage 130. The game progress may be the number of levels, percentage of completion, last recorded location, last recorded time, etc. The processor 150 first finds out the file or folder path of the game material or related files (i.e., the game files GF1, GF2 …, and/or GFn) corresponding to the game progress, and then compares whether the game files GF1, GF2 …, and/or GFn of the current game stage exceed the remaining space of the second storage 130. If the remaining space is not exceeded, the processor 150 copies the game files GF1, GF2 …, and/or GFn from the first storage 110 to the second storage 130 and further evaluates whether there is remaining space to pre-store the game files GF1, GF2 …, and/or GFn for the continuation game phase in the second storage 130. The subsequent game stage is after the current game stage, for example, the current game stage is level 3, and the subsequent game stages are level 4 and level 5 (the number of the subsequent game stages can be changed according to the requirement or the remaining space). On the other hand, if the remaining space is exceeded, the processor 150 may copy the important/necessary/priority loaded game files GF1, GF2 …, and/or GFn to the second storage 130 first.
Next, the processor 150 accesses the game files GF1, GF2 … and/or GFn stored in the second storage 130 to continue the game progress of the game G (step S350). Specifically, in the prior art, the processor 150, in response to execution of the game G, would load the corresponding game files GF1, GF2 …, and/or GFn from the first storage 110 into the system memory. The processor 150 of the embodiment of the present invention has temporarily stored the game files GF1, GF2 …, and/or GFn corresponding to the game progress in the second storage 130, so that the processor 150 may change to directly load the corresponding game files GF1, GF2 …, and/or GFn from the second storage 130 to speed up the loading of the game files GF1, GF2 …, and/or GFn.
It is noted that, in order to effectively utilize the storage space, the embodiment of the present invention adopts the concept of file management by loop recording. In response to the end of the current game stage or the loading of part of the game files GF1, GF2 … and/or GFn thereof, the processor 150 may access the game files GF1, GF2 … and/or GFn of the following game stage or the current game stage that have not been loaded yet from the second repository 130 and delete the loaded or completed game files GF1, GF2 … and/or GFn of the current game stage in the second repository 130. Thus, the second storage 130 has a space for storing the game files GF1, GF2 … and/or GFn of other game stages.
It should be noted that the above description relates to the loading behavior during the starting phase of the game G, and the processor 150 will continuously monitor the game progress of the game G during the execution of the game G and determine the game phase in which the game G is going to be played or is likely to be played in the future. For example, the processor 150 reads an automatically stored game archive, or detects a current level or scene. The processor 150 may pre-store the game files GF1, GF2 … and/or GFn corresponding to the game stages to be played or to be played in the future into the second storage 130 according to the remaining space of the second storage 130. Then, the processor 150 can access the game files GF1, GF2 … and/or GFn pre-stored in the second storage 130 to continue the game progress.
In order to make the reader understand the spirit of the present invention, another embodiment is described below. FIG. 4 is a system architecture diagram of a computer system 100 according to an embodiment of the invention. Referring to fig. 4, the computer system 100 further includes a system memory 420 (e.g., DRAM), a display card 440 (not limited to the transmission interface, and including an image memory 441 and a chip 443), and a display 460 (e.g., LCD, LED display, OLED display, etc.). In the present embodiment, the first storage 110 is a hard disk 430, and the second storage 130 is an Optane memory 410.
The Optane memory 410 uses 3D XPoint as a transmission medium, has a response time close to that of DRAM, and is a high-speed storage medium. The Optane memory 410 is located in the computer system 100 similar to a Cache (Cache). The Optane memory 410 can be used to speed up the slower hard disk 430, so that the computer system 100 with the hard disk 430 can also have the same usage efficiency as an SSD. As long as the files of the computer system 100 are temporarily stored in the Optane memory 410, the excellent response performance will effectively enhance the user experience.
The acceleration of the Optane memory 410 can be divided into Block Cache (Block Cache), Top Accessed Content (Top Accessed Content), and User Pinned Files (User Pinned Files). The block cache calculates the usage habit (e.g., hit rate/hit rate (HitRATE)) of the user by using the algorithm of the Optane memory 410 itself, and stores the data considered important to the user by the algorithm. The highest access content is the system file that the Optane algorithm has set in advance to accelerate (e.g., Hiberfile of Microsoft (Windows) system, Pagefile of system page, etc.). User-locked files can lock files that need acceleration (either application or folder path) on demand, so that the file can be used for the first time to give the user a 100% acceleration feeling (more than twice compared with block cache acceleration).
FIG. 5 is a comparison of block caching and file lock acceleration. Referring to FIG. 5, since the block cache function needs to calculate the hit/hit ratio of each file by the user through an algorithm, the file is not immediately accelerated by 100% (the file is not completely buffered in the Optane memory 410). Using the block cache acceleration 511 will require waiting until the 13 th time the game is executed before 100% acceleration is achieved, while using the file lock acceleration 513 will allow 100% acceleration for the first time the game is run (i.e., the specified file is immediately buffered in the Optane memory 410). The experiment of fig. 5 shows that the document can be 100% accelerated by 13 consecutive times, which is completely unsuitable for general user behavior (general user behavior should be mixed with other usage scenarios, such as web surfing, document processing, etc.). In addition, the difference between the total scene load time of the file lock and the block cache can be obtained from table (2), and the load time of the file lock is relatively close to that of the RAM DISK. Therefore, if the user locking function can be effectively utilized to speed up the files which really need to be accelerated for the user, the user can obtain better use experience.
Watch (2)
In addition, because the current game is more than 40 or 50GB, the size of Optane memory 410 sold in the market is only 16GB/32GB/64GB, and the storage space of Optane memory 410 is further divided into at least a file locking area 411 and a block cache area 413, so as to be used for the user to lock the file and the block cache function respectively. Finally, the space available in Optane memory 410 for file locking (i.e., file lock area 411) is roughly 1/4 full in capacity, and is unlikely to be sufficient to speed up the files of the entire game.
The embodiment of the present invention focuses on how to accelerate all the game files GF, so that the user can have an acceleration effect of 100% during the process of executing the game G. Referring back to fig. 4, the processor 150 can read the game archive record of the game G through the access control program 483 running in the background or foreground, and find out the file path or folder path of the game file GF (e.g., the material of the level S1-S6) corresponding to the game progress. The processor 150, through the storage driver 481, pre-locks the game record file to the file lock area 411 according to the remaining space of the file lock area 411, the game file GF (e.g., the current level S2) of the current game stage and the file path or folder path of the game file GF (e.g., the next level S3 or the next level S4, which is adjusted according to the remaining space of the file lock area 411) following the game stage (which may be accessed later) to the file lock area 411, so as to store the game file GF corresponding to the game progress in the file lock area 411.
After the current game stage is finished (e.g., the current level clearance), the processor 150 may delete the game file GF that has been finished/completed/clearance from the file locking area 411 and lock the game file GF needed for the subsequent game stage to the file locking area 411. Therefore, the limit of the limited space of the file locking area 411 can be broken through, the file locking area 411 can be effectively utilized, and the user can obtain 100% acceleration in the game process.
Another embodiment of the present invention provides a computer program product for executing the steps of the game loading method (the embodiments shown in fig. 3 to 5). The computer program product comprises a plurality of program instructions, and the processor 150 in the computer system 100 can complete the game loading method and realize the functions of the computer system 100 after loading and executing the program instructions.
In summary, the computer system, the game loading method and the computer program product according to the embodiments of the invention can help the user to accelerate (store the game file in the higher-access-speed storage) and connect the data (stage) that may be accessed (these data may be the image, music, template, etc. required by the stage) in advance by detecting the game progress of the user executing the game. In addition, the embodiment of the invention also deletes the game materials which are passed by the user so as to vacate enough space for placing the files which need to be accelerated subsequently. Therefore, the loading time of the game scene can be effectively improved, and the game experience of a user is improved.
Although the present invention has been described with reference to the above embodiments, it should be understood that various changes and modifications can be made therein by those skilled in the art without departing from the spirit and scope of the invention.
Claims (9)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811208242.4A CN111142959A (en) | 2018-10-17 | 2018-10-17 | Computer system and game loading method thereof |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201811208242.4A CN111142959A (en) | 2018-10-17 | 2018-10-17 | Computer system and game loading method thereof |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111142959A true CN111142959A (en) | 2020-05-12 |
Family
ID=70515047
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201811208242.4A Withdrawn CN111142959A (en) | 2018-10-17 | 2018-10-17 | Computer system and game loading method thereof |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111142959A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113856197A (en) * | 2021-11-01 | 2021-12-31 | 上海米哈游天命科技有限公司 | Object interaction method and device in virtual scene |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200900928A (en) * | 2007-05-15 | 2009-01-01 | Sandisk Il Ltd | File storage in a computer system with diverse storage media |
US20140024457A1 (en) * | 2012-07-20 | 2014-01-23 | Microsoft Corporation | Game browsing |
CN105721602A (en) * | 2016-03-22 | 2016-06-29 | 苏州世纪天成信息技术有限公司 | Game operating method and system for taking terminal as download source server |
-
2018
- 2018-10-17 CN CN201811208242.4A patent/CN111142959A/en not_active Withdrawn
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
TW200900928A (en) * | 2007-05-15 | 2009-01-01 | Sandisk Il Ltd | File storage in a computer system with diverse storage media |
US20140024457A1 (en) * | 2012-07-20 | 2014-01-23 | Microsoft Corporation | Game browsing |
CN105721602A (en) * | 2016-03-22 | 2016-06-29 | 苏州世纪天成信息技术有限公司 | Game operating method and system for taking terminal as download source server |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113856197A (en) * | 2021-11-01 | 2021-12-31 | 上海米哈游天命科技有限公司 | Object interaction method and device in virtual scene |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7912994B2 (en) | Reducing connection time for mass storage class peripheral by internally prefetching file data into local cache in response to connection to host | |
US20150186376A1 (en) | Tile Cache | |
US20120246592A1 (en) | Method for customizing user interface and electronic device thereof | |
US20180321857A1 (en) | Dirty Data Management for Hybrid Drives | |
WO2013152660A1 (en) | Operating system startup acceleration method and device, terminal and computer storage medium | |
US11344818B2 (en) | Computer system, game loading method thereof and computer readable storage medium | |
CN107480074A (en) | A kind of caching method, device and electronic equipment | |
US20100142350A1 (en) | Hybrid optical disk drive, method of operating the same, and electronic system adopting the hybrid optical disk drive | |
EP2150911A1 (en) | Apparatus and method for screening new data without impacting download speed | |
CN104834478B (en) | A kind of data write-in and read method based on isomery mixing storage device | |
CN115103713A (en) | Tracking file system read operations for live video game play and for client-side discarding and prefetching game data | |
CN111142959A (en) | Computer system and game loading method thereof | |
CN108334383B (en) | Information processing method and electronic equipment | |
US11375286B1 (en) | Pre-fetch of data using seek intervals | |
CN106557365A (en) | Self-adaptive same-page memory merging method and electronic device thereof | |
JP6541930B2 (en) | Memory management system, information processing apparatus and memory management method | |
US20230376242A1 (en) | System for computational storage with hardware-assistance | |
US9519574B2 (en) | Dynamic content access window loading and unloading | |
US9804968B2 (en) | Storage system and data writing method | |
CN108804533B (en) | Heterogeneous big data information filtering method and device | |
US20200142623A1 (en) | Storage device and electronic device managing data transmitted to storage device | |
CN118585461B (en) | A method, device and electronic device for controlling GC performance balance | |
CN117641006B (en) | Video playing control method and device and related equipment | |
TWI875358B (en) | Semiconductor memory device and data storage method thereof | |
TW202011213A (en) | Computer system and memory control method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20200512 |
|
WW01 | Invention patent application withdrawn after publication |