CN106951488B - 一种日志记录方法和装置 - Google Patents
一种日志记录方法和装置 Download PDFInfo
- Publication number
- CN106951488B CN106951488B CN201710147943.0A CN201710147943A CN106951488B CN 106951488 B CN106951488 B CN 106951488B CN 201710147943 A CN201710147943 A CN 201710147943A CN 106951488 B CN106951488 B CN 106951488B
- Authority
- CN
- China
- Prior art keywords
- cache queue
- queue
- log
- log data
- cache
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/17—Details of further file system functions
- G06F16/172—Caching, prefetching or hoarding of files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/10—File systems; File servers
- G06F16/18—File system types
- G06F16/1805—Append-only file systems, e.g. using logs or journals to store data
- G06F16/1815—Journaling file systems
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Databases & Information Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Debugging And Monitoring (AREA)
Abstract
本发明提供了一种日志记录方法和装置。涉及日志管理领域;解决了***处理能力低的问题。该方法包括:为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据。本发明提供的技术方案适用于高并发日志读写环境,实现了高效并行的日志数据缓存写入。
Description
技术领域
本发明涉及日志管理领域,尤其涉及一种日志记录方法和装置。
背景技术
在日常开发中,日志的记录是必不可少的。对同一个文件进行写日志只能单线程的去写,通常会使用简单的lock(锁)来保证当前时刻只有一个线程对同一个日志文件进行写操作,从而保证日志输出的正确性。但是这种方式的缺点也很明显,就是***在高并发的情况下,效率会非常的差。很容易导致***性能瓶颈,降低***处理能力。
即便使用多线程的处理方式来避免***处理能力的下降,但是在多线程写日志记录的时候,由于日志记录需要与磁盘I/O交互,导致单一线程占用锁的时间会加长,从而导致大量线程的阻塞与等待,降低***的处理能力。
发明内容
本发明旨在解决上面描述的问题。
根据本发明的第一方面,一种日志记录方法,包括:
为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据。
优选的,将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据包括:
创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁,在写入完成后解除该同步锁;
创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取。
优选的,该方法还包括:
在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列。
优选的,该方法还包括:
所述逻辑线程在所述当前缓存队列中的日志数据全部写入完成后,重新选择当前缓存队列完成之前,对待写入的日志数据的获取添加同步锁。
优选的,该方法还包括:
对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
根据本发明的另一方面,一种日志记录装置,包括:
队列生成模块,用于为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
控制模块,用于选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
读写管理模块,用于将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据。
优选的,所述读写管理模块包括:
第一线程管理单元,用于创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁,在写入完成后解除该同步锁;
第二线程管理单元,用于创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取。
优选的,所述控制模块,还用于在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列。
优选的,所述队列生成模块,还用于对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
本发明提供了一种日志记录方法与装置,为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列,选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列,将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据,以双缓存队列或多缓存队列的形式进行分工,缓存数据与写入数据同步进行,实现了高效并行的日志数据缓存写入,解决了***处理能力低的问题。
参照附图来阅读对于示例性实施例的以下描述,本发明的其他特性特征和优点将变得清晰。
附图说明
并入到说明书中并且构成说明书的一部分的附图示出了本发明的实施例,并且与描述一起用于解释本发明的原理。在这些附图中,类似的附图标记用于表示类似的要素。下面描述中的附图是本发明的一些实施例,而不是全部实施例。对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,可以根据这些附图获得其他的附图。
图1示例性地示出了本发明的实施例一提供的一种日志记录方法流程;
图2示例性地示出了本发明的实施例二提供的一种日志记录装置的结构。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。
无论是单线程还是多线程的日志文件写入方式,均存在***处理效率低的问题。为了解决该问题,本发明的实施例提供了一种日志记录方法和装置。下面结合附图,对本发明的实施例进行详细说明。
首先结合附图,对本发明的实施例一进行说明。
本发明实施例提供了一种日志记录方法,使用该方法,能够在保证可靠性的前提下有效提高日志文件写入效率。使用该方法完成日志记录的流程如图1所示,包括:
步骤101、为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
本步骤中,首先为日志文件写入任务分配缓存队列组,缓存队列组中配置有多个缓存队列。在一般的应用环境中,多采用一个缓存队列组包含两个缓存队列的配置方式。
对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
以下,以每组包含两个缓存队列为例进行说明。本步骤中,创建多组缓存队列组(缓存队列组为双缓存),为每个用户分配一组缓存队列。
步骤102、选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
本步骤中,从缓存队列组内选择一个缓存队列作为当前缓存队列,当前缓存队列即为负责数据写入日志数据到磁盘的缓存队列,除当前缓存队列外的其他缓存队列负责接收待写入磁盘的日志数据。可根据预置的筛选规则,从所述缓存队列组中存储有日志数据的缓存队列中选择至少一个缓存队列作为当前缓存队列。筛选规则可根据应用场景确定,如选择已缓存日志数据较多的缓存队列作为当前缓存队列或将可用缓存队列以列表的形式呈现后,接收用户指令,根据用户指令确定当前缓存队列。
具体的,可以日志缓存列表的形式实现缓存队列。例如,创建缓存队列组,包含日志缓存列表Buffer A和日志缓存列表Buffer B,并且指定当前正在使用的日志缓存列表。
步骤103、将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据;
本步骤中,缓存队列组中的部分缓存队列进行日志数据向磁盘中日志文件的写入,另一部分缓存队列获取待写入的日志数据,向磁盘写入数据与继续获取待写入的日志数据通过不同线程并行进行,大大提高了日志文件写入效率。
本步骤中,优选的,为两个缓存队列分别配置线程:
创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁;
创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取。
仍以一个缓存队列组中包含两个缓存队列为例进行说明,两个缓存队列中的一个给逻辑线程用来读,另一个负责给I/O线程来写。
日志数据作为一个StringBuffer添加到当前正在使用的ArrayList<StringBuffer>A中,另一个则空闲。
将当前的日志文件进行加锁同步,根据条件判断获得当前需要进行输出缓存的日志缓存列表,进行日志文件的缓存写入。
I/O线程每次写缓存队列时需要添加同步锁,但是逻辑线程在读队列是不需要加锁的。
当有多个线程来进行日志记录的时候,将需要写入的日志数据先存放到负责写入的缓存队列当中,然后将逻辑读的线程设为非阻塞方式。此时逻辑读的队列就开始工作了。在当逻辑读的线程读取他自己的缓存队列的数据之后,将逻辑读的缓存队列和负责写入的缓存队列进行交换。
步骤104、在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列;
本步骤中,在当前缓存队列中的日志数据向磁盘写入完成后,就从所述缓存队列组中重新选择当前缓存队列,将其他已缓存有日志数据的缓存队列选择为新的当前缓存队列,将新的当前缓存队列中的日志数据继续向磁盘写入;而上一个当前缓存队列则继续获取待写入的日志数据。通过这样的交替,实现不间断的数据写入。
仍以一个缓存队列组中包含两个缓存队列为例进行说明,当逻辑线程读完队列后会将自己的缓存队列与I/O线程的缓存队列相互调换。逻辑线程在调换队列时也需要添加同步锁,既在所述当前缓存队列中的日志数据全部写入完成后,重新选择当前缓存队列完成之前,对待写入的日志数据的获取添加同步锁。
当内存中的日志数据输出到磁盘文件后,会将当前使用的ArrayList<Buffer>A与空闲的ArrayList<Buffer>B进行角色的互换。具体流程如下:
如果获取的当前正在将日志数据写入缓存的是ArrayList<Buffer>A,则ArrayList<Buffer>A转换为写入磁盘缓存。从而将正在空闲的ArrayList<Buffer>B转换为继续接收日志数据写入的缓存列表。交换后空闲的ArrayList<Buffer>B将接收日志数据,而之前已经写入内容的ArrayList<Buffer>A则用来输出日志文件到磁盘存储。
日志缓存列表占用的缓存区的大小可根据任务中涉及的数据量大小进行调整,如果缓存区很小,就更能及时处理数据,但是吞吐量以及出现资源竞争的几率就会随之增大;缓存区设置较大则效果相反。
优选的,可以给缓存区设置容量上限,在缓存区存储的数据量超过上限之后,再接收到的数据将会丢弃而不***日志缓存列表。
将缓存列表A中的日志文件输出到磁盘,支持内存大小触发和刷新时间间隔触发写入磁盘文件。
双缓存列表的交互可以避免每次日志文件输出到磁盘时影响新日志数据的接收以及多线程锁的问题。
日志文件输出到磁盘是支持多种输出方式,可以根据时间间隔触发写操作,也可以根据内存缓冲去大小触发写操作。
下面结合附图,对本发明的实施例二进行说明。
本发明实施例提供了一种日志记录装置,能够与本发明的实施例一提供的一种日志记录方法相结合,进行高效的日志文件写入,该装置的结构如图2所示,包括:
队列生成模块201,用于为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
控制模块202,用于选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
读写管理模块203,用于将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据。
优选的,所述读写管理模块203包括:
第一线程管理单元2031,用于创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁;
第二线程管理单元2032,用于创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取。
优选的,所述控制模块202,还用于在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列。
优选的,所述队列生成模块201,还用于对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
本发明的实施例提供了一种日志记录方法与装置,为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列,选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列,将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据,以双缓存队列或多缓存队列的形式进行分工,缓存数据与写入数据同步进行,实现了高效并行的日志数据缓存写入,解决了***处理能力低的问题。
上面描述的内容可以单独地或者以各种方式组合起来实施,而这些变型方式都在本发明的保护范围之内。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制。尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (5)
1.一种日志记录方法,其特征在于,包括:
为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据;
将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据包括:
创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁,在写入完成后解除该同步锁;
创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取;
当有多个线程记录日志数据时,将待写入的日志数据先存放到I/O线程的缓存队列中,并将逻辑线程设为非阻塞方式,当逻辑线程读取待写入的日志数据之后,将逻辑线程的缓存队列和I/O线程的缓存队列进行交换;
该方法还包括:
在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列。
2.根据权利要求1所述的日志记录方法,其特征在于,该方法还包括:
所述逻辑线程在所述当前缓存队列中的日志数据全部写入完成后,重新选择当前缓存队列完成之前,对待写入的日志数据的获取添加同步锁。
3.根据权利要求1所述的日志记录方法,其特征在于,该方法还包括:
对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
4.一种日志记录装置,其特征在于,包括:
队列生成模块,用于为日志文件写入任务分配缓存队列组,所述缓存队列组包含至少两个缓存队列;
控制模块,用于选择所述缓存队列组中的至少一个缓存队列作为当前缓存队列;
读写管理模块,用于将所述当前缓存队列中的日志数据写入磁盘中的日志文件,同时所述缓存队列组中除所述当前缓存队列外的缓存队列获取待写入的日志数据;
所述控制模块,还用于在所述当前缓存队列中的日志数据全部写入完成后,从所述缓存队列组中重新选择当前缓存队列;
所述读写管理模块包括:
第一线程管理单元,用于创建I/O线程,进行所述当前缓存队列中的日志数据向日志文件中的写入,在写入期间对所述日志文件添加同步锁,在写入完成后解除该同步锁;
第二线程管理单元,用于创建逻辑线程,进行所述缓存队列组中除所述当前缓存队列外的缓存队列对待写入的日志数据的获取;
所述日志记录装置还用于当有多个线程记录日志数据时,将待写入的日志数据先存放到I/O线程的缓存队列中,并将逻辑线程设为非阻塞方式,当逻辑线程读取待写入的日志数据之后,将逻辑线程的缓存队列和I/O线程的缓存队列进行交换。
5.根据权利要求4所述的日志记录装置,其特征在于,
所述队列生成模块,还用于对于多个日志文件写入任务,为每个日志文件写入任务分别分配对应的缓存队列组。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710147943.0A CN106951488B (zh) | 2017-03-14 | 2017-03-14 | 一种日志记录方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710147943.0A CN106951488B (zh) | 2017-03-14 | 2017-03-14 | 一种日志记录方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106951488A CN106951488A (zh) | 2017-07-14 |
CN106951488B true CN106951488B (zh) | 2021-03-12 |
Family
ID=59467442
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710147943.0A Active CN106951488B (zh) | 2017-03-14 | 2017-03-14 | 一种日志记录方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106951488B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107609129B (zh) * | 2017-09-18 | 2021-03-23 | 北京奇虎科技有限公司 | 日志实时处理*** |
CN107798099A (zh) * | 2017-10-27 | 2018-03-13 | 努比亚技术有限公司 | 一种日志信息抓取方法、终端和计算机可读存储介质 |
CN109284257B (zh) * | 2018-08-10 | 2021-01-05 | 锐捷网络股份有限公司 | 一种日志写入方法、装置、电子设备及存储介质 |
CN109739738A (zh) * | 2018-12-26 | 2019-05-10 | 深圳市网心科技有限公司 | 基于html5的事件日志管理方法、***及相关装置 |
CN112015827A (zh) * | 2019-05-30 | 2020-12-01 | 中兴通讯股份有限公司 | 一种数据库处理方法、装置及计算机可读存储介质 |
CN110908968B (zh) * | 2019-11-14 | 2022-05-27 | 浪潮电子信息产业股份有限公司 | 一种文件锁解锁时避免惊群的方法、装置、设备及存储介质 |
CN112445431A (zh) * | 2020-11-16 | 2021-03-05 | 深圳市元征科技股份有限公司 | 数据存储方法、装置、设备及介质 |
CN114237500A (zh) * | 2021-12-09 | 2022-03-25 | 北京美信时代科技有限公司 | 一种通过缓存事务提高写入效率的方法及*** |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101403980A (zh) * | 2008-11-12 | 2009-04-08 | 西安交通大学 | 一种电子产品码多线程处理方法 |
CN103064779A (zh) * | 2012-12-26 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种快速处理日志信息的方法 |
CN104730401A (zh) * | 2015-04-10 | 2015-06-24 | 中国电力科学研究院 | 基于双缓冲模式的任意长度录波文件波形回放实现方法 |
Family Cites Families (14)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN100521623C (zh) * | 2007-05-22 | 2009-07-29 | 网御神州科技(北京)有限公司 | 高性能的Syslog日志处理和存储方法 |
CN101625655B (zh) * | 2009-08-20 | 2011-05-25 | 华中科技大学 | 一种内存数据库的并行恢复方法 |
CN102043601B (zh) * | 2010-12-30 | 2012-07-18 | 中国科学院等离子体物理研究所 | 基于双双缓存机制的在线波形显示方法 |
CN102110167B (zh) * | 2011-03-01 | 2013-07-31 | 上海维宏电子科技股份有限公司 | 数控***中实现日志信息管理的方法 |
CN102426553B (zh) * | 2011-11-11 | 2014-05-28 | 中国科学技术大学 | 基于双缓存预读的向用户传输数据的方法和装置 |
CN102521269B (zh) * | 2011-11-22 | 2013-06-19 | 清华大学 | 一种基于索引的计算机连续数据保护方法 |
US9542209B2 (en) * | 2012-06-29 | 2017-01-10 | Vmware, Inc. | Preserving user profiles across remote desktop sessions |
US9514007B2 (en) * | 2013-03-15 | 2016-12-06 | Amazon Technologies, Inc. | Database system with database engine and separate distributed storage service |
CN104252405B (zh) * | 2013-06-26 | 2018-02-27 | 腾讯科技(深圳)有限公司 | 日志信息的输出方法及装置 |
CN103532943A (zh) * | 2013-10-08 | 2014-01-22 | 北京神州绿盟信息安全科技股份有限公司 | web应用防火墙设备和安全防护日志的异步处理方法 |
CN104866602A (zh) * | 2015-06-01 | 2015-08-26 | 走遍世界(北京)信息技术有限公司 | 队列处理方法及装置 |
CN105224444B (zh) * | 2015-10-14 | 2019-02-01 | 深圳市金证科技股份有限公司 | 日志生成方法及装置 |
CN105955972A (zh) * | 2016-02-01 | 2016-09-21 | 上海华测导航技术股份有限公司 | 一种接收机日志管理***及方法 |
CN106407028B (zh) * | 2016-08-26 | 2019-02-19 | 佛山智能装备技术研究院 | 一种双缓冲式的机器人软件日志存储方法 |
-
2017
- 2017-03-14 CN CN201710147943.0A patent/CN106951488B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101403980A (zh) * | 2008-11-12 | 2009-04-08 | 西安交通大学 | 一种电子产品码多线程处理方法 |
CN103064779A (zh) * | 2012-12-26 | 2013-04-24 | 北京思特奇信息技术股份有限公司 | 一种快速处理日志信息的方法 |
CN104730401A (zh) * | 2015-04-10 | 2015-06-24 | 中国电力科学研究院 | 基于双缓冲模式的任意长度录波文件波形回放实现方法 |
Also Published As
Publication number | Publication date |
---|---|
CN106951488A (zh) | 2017-07-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106951488B (zh) | 一种日志记录方法和装置 | |
CN108733344B (zh) | 数据读写方法、装置以及环形队列 | |
US10901802B2 (en) | Method and apparatus for implementing virtual GPU and system | |
US10198369B2 (en) | Dynamic memory remapping to reduce row-buffer conflicts | |
US8982658B2 (en) | Scalable multi-bank memory architecture | |
US7733892B2 (en) | Buffer management method based on a bitmap table | |
CN111124641B (zh) | 一种利用多线程的数据处理方法及*** | |
US9032162B1 (en) | Systems and methods for providing memory controllers with memory access request merging capabilities | |
CN102651001A (zh) | 一种图片浏览的方法及装置 | |
US9229765B2 (en) | Guarantee real time processing of soft real-time operating system by instructing core to enter a waiting period prior to transferring a high priority task | |
EP3279899A1 (en) | Dram refreshing method, apparatus and system | |
KR20180089273A (ko) | 비순차적 리소스 할당을 구현하는 방법 및 장치 | |
US10521371B2 (en) | Cache system and associated method | |
US20240143392A1 (en) | Task scheduling method, chip, and electronic device | |
CN106293953B (zh) | 一种访问共享显示数据的方法及*** | |
CN112800026A (zh) | 一种数据转移节点、方法、***及计算机可读存储介质 | |
US8190814B2 (en) | Memory access apparatus and display using the same | |
CN103853504A (zh) | 一种缓存***数据存取方法 | |
CN111966511A (zh) | 消息队列数据读写处理方法及装置 | |
CN115576685A (zh) | 容器的调度方法、装置及计算机设备 | |
JP6059360B2 (ja) | バッファ処理方法及び装置 | |
KR20170055878A (ko) | 비동기식 멀티 스레딩 기반의 고화질 다시점 영상 실시간 통합 장치 및 방법 | |
CN106057226B (zh) | 双端口存储***的存取控制方法 | |
WO2017036041A1 (zh) | 数据的同步访问方法和同步访问装置 | |
JP2003248652A (ja) | 高性能dmaコントローラ |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |