CN116719559A - 红外扫描的方法以及其装置 - Google Patents

红外扫描的方法以及其装置 Download PDF

Info

Publication number
CN116719559A
CN116719559A CN202210858415.7A CN202210858415A CN116719559A CN 116719559 A CN116719559 A CN 116719559A CN 202210858415 A CN202210858415 A CN 202210858415A CN 116719559 A CN116719559 A CN 116719559A
Authority
CN
China
Prior art keywords
scanned
data
target
scanning
target data
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.)
Granted
Application number
CN202210858415.7A
Other languages
English (en)
Other versions
CN116719559B (zh
Inventor
覃亮
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Guangzhou Zhongyuan Intelligent Technology Co ltd
Original Assignee
Guangzhou Zhongyuan Intelligent Technology Co ltd
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 Guangzhou Zhongyuan Intelligent Technology Co ltd filed Critical Guangzhou Zhongyuan Intelligent Technology Co ltd
Priority to CN202210858415.7A priority Critical patent/CN116719559B/zh
Publication of CN116719559A publication Critical patent/CN116719559A/zh
Application granted granted Critical
Publication of CN116719559B publication Critical patent/CN116719559B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • G06F9/38Concurrent instruction execution, e.g. pipeline or look ahead
    • G06F9/3885Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units
    • G06F9/3887Concurrent instruction execution, e.g. pipeline or look ahead using a plurality of independent parallel functional units controlled by a single instruction for multiple data lanes [SIMD]
    • 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/05Digital input using the sampling of an analogue quantity at regular intervals of time, input from a/d converter or output to d/a converter
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Photometry And Measurement Of Optical Pulse Characteristics (AREA)
  • Transforming Light Signals Into Electric Signals (AREA)

Abstract

本申请提供了一种红外扫描的方法以及其装置,该方法包括:首先,建立待扫描数据扫描顺序的序号与待扫描数据的数量的对应关系;然后,根据目标待扫描数据的扫描序列号以及对应关系,确定目标扫描序列号对应的待扫描数据量为目标数据量;之后,至少根据目标数据量,确定目标待扫描数据对应的目标SIMD指令的执行次数,目标SIMD指令为扫描目标待扫描数据时使用的指令;最后,按照执行次数执行目标SIMD指令,以对目标待扫描数据的至少部分进行扫描,得到扫描后数据。解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了红外扫描的效率较高。

Description

红外扫描的方法以及其装置
技术领域
本申请涉及红外领域,具体而言,涉及一种红外扫描的方法、红外扫描的装置、计算机可读存储介质、处理器以及MCU。
背景技术
红外扫描是以接收组为单位进行扫描的,扫描每次缓存一组接收组的ADC(AnalogTo Digital Converter,模拟数字转换器)数据,需要MCU(Micro Controller Unit,微控制单元)干预将双字节的ADC数据转换为单字节的ADC数据,转换为单字节数据方便运算和节省内存,使用for/if--else等指令完成移位和赋值的操作,达到双字节转换为单字节的数据,但是扫描一帧数据需要运行for/if-else/移位指令几千或一万多次,转换一帧的数据需要的时间比较长。
在背景技术部分中公开的以上信息只是用来加强对本文所描述技术的背景技术的理解,因此,背景技术中可能包含某些信息,这些信息对于本领域技术人员来说并未形成在本国已知的现有技术。
发明内容
本申请的主要目的在于提供一种红外扫描的方法、红外扫描的装置、计算机可读存储介质、处理器以及MCU,以解决现有技术中扫描单帧数据时间较长导致运行效率低的问题。
根据本发明实施例的一个方面,提供了一种红外扫描的方法,所述方法包括:建立扫描序列号与待扫描数据量的对应关系,所述扫描序列号为表征待扫描数据的扫描顺序的序号,所述待扫描数据量为所述待扫描数据的数量;根据目标扫描序列号以及所述对应关系,确定所述目标扫描序列号对应的所述待扫描数据量为目标数据量,所述目标扫描序列号为目标待扫描数据的所述扫描序列号;至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD(Single Instruction Multiple Data,单指令多数据流)指令的执行次数,所述目标SIMD指令为扫描所述目标待扫描数据时使用的指令;按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
可选地,至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,包括:获取第一字长以及所述扫描后数据的第二字长,所述第二字长小于所述第一字长,所述第一字长为执行一次所述目标SIMD指令的过程中,参与运算的数据长度;确定所述第一字长与所述第二字长的商为预定处理量;根据所述目标数据量以及所述预定处理量,确定所述执行次数。
可选地,根据所述目标数据量以及所述预定处理量,确定所述执行次数,包括:控制所述目标数据量与所述预定处理量相除,得到预定执行数;在所述预定执行数为整数的情况下,确定所述预定执行数为所述执行次数;在所述预定执行数不为整数的情况下,确定小于所述预定执行数的最大整数为所述执行次数。
可选地,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:在所述预定执行数为所述整数的情况下,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据进行扫描,得到所述扫描后数据。
可选地,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,还包括:在所述预定执行数不为所述整数的情况下,按照所述执行次数,执行所述目标SIMD指令,以对部分的所述目标待扫描数据进行扫描,得到第一数据;执行预定指令,以对剩余的所述目标待扫描数据进行扫描,得到第二数据,所述第一数据与所述第二数据构成所述扫描后数据,所述预定指令包括所述目标SIMD指令和/或C语言指令。
可选地,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:执行步骤,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到第三数据;移动步骤,将所述第三数据移动或者拷贝到预定位置;循环步骤,依次执行所述执行步骤以及所述移动步骤,直到所述执行步骤的执行次数达到所述执行次数为止。
根据本发明实施例的另一方面,还提供了一种红外扫描的装置,所述装置包括建立单元、第一确定单元、第二确定单元以及执行单元,其中,所述建立单元用于建立扫描序列号与待扫描数据量的对应关系,所述扫描序列号为表征待扫描数据的扫描顺序的序号,所述待扫描数据量为所述待扫描数据的数量;所述第一确定单元用于根据目标扫描序列号以及所述对应关系,确定所述目标扫描序列号对应的所述待扫描数据量为目标数据量,所述目标扫描序列号为目标待扫描数据的所述扫描序列号;所述第二确定单元用于至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,所述目标SIMD指令为扫描所述目标待扫描数据时使用的指令;所述执行单元用于按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
根据本发明实施例的又一方面,还提供了一种计算机可读存储介质,所述计算机可读存储介质包括存储的程序,其中,所述程序用于执行任一种所述的方法。
根据本发明实施例的再一方面,还提供了一种处理器,所述处理器用于运行程序,其中,所述程序运行时执行任一种所述的方法。
根据本发明实施例的又一方面,还提供了一种MCU,所述MCU包括一个或多个处理器,存储器以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行任一种所述的方法。
在本发明实施例中,所述红外扫描的方法中,首先,建立待扫描数据扫描顺序的序号与待扫描数据的数量的对应关系;然后,根据目标待扫描数据的所述扫描序列号以及所述对应关系,确定所述目标扫描序列号对应的所述待扫描数据量为目标数据量;之后,至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,所述目标SIMD指令为扫描所述目标待扫描数据时使用的指令;最后,按照所述执行次数执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据。相比现有技术中扫描单帧数据时间较长导致运行效率低的问题,本申请的所述红外扫描的方法,通过建立所述扫描序列号与所述待扫描数据量的对应关系,使得可以根据所述对应关系以及所述目标扫描序列号,确定所述目标数据量,并根据所述目标数据量确定所述目标待扫描数据对应的执行次数,再按照所述执行次数执行所述目标SIMD指令,对所述目标待扫描数据中的至少部分进行扫描,使得可以自动根据所述目标扫描序列号确定所述执行次数,并循环执行所述目标SIMD指令,保证了扫描所述目标待扫描数据的速度较快,也避免了现有技术中需要大量代码完成对所述目标待扫描数据的扫描导致代码量高以及运行效率低的问题,解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了所述红外扫描的效率较高。
附图说明
构成本申请的一部分的说明书附图用来提供对本申请的进一步理解,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了根据本申请的实施例的红外扫描的方法流程示意图;
图2示出了根据本申请的实施例的红外扫描的装置的示意图。
具体实施方式
需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。下面将参考附图并结合实施例来详细说明本申请。
为了使本技术领域的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
应该理解的是,当元件(诸如层、膜、区域、或衬底)描述为在另一元件“上”时,该元件可直接在该另一元件上,或者也可存在中间元件。而且,在说明书以及权利要求书中,当描述有元件“连接”至另一元件时,该元件可“直接连接”至该另一元件,或者通过第三元件“连接”至该另一元件。
正如背景技术中所说的,现有技术中的扫描单帧数据时间较长导致运行效率低的问题,为了解决上述问题,本申请的一种典型的实施方式中,提供了一种红外扫描的方法、红外扫描的装置、计算机可读存储介质、处理器以及MCU。
根据本申请的实施例,提供了一种红外扫描的方法。
图1是根据本申请实施例的红外扫描的方法的流程图。如图1所示,该方法包括以下步骤:
步骤S101,建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;
步骤S102,根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;
步骤S103,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;
步骤S104,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
上述红外扫描的方法中,首先,建立待扫描数据扫描顺序的序号与待扫描数据的数量的对应关系;然后,根据目标待扫描数据的上述扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量;之后,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;最后,按照上述执行次数执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。相比现有技术中扫描单帧数据时间较长导致运行效率低的问题,本申请的上述红外扫描的方法,通过建立上述扫描序列号与上述待扫描数据量的对应关系,使得可以根据上述对应关系以及上述目标扫描序列号,确定上述目标数据量,并根据上述目标数据量确定上述目标待扫描数据对应的执行次数,再按照上述执行次数执行上述目标SIMD指令,对上述目标待扫描数据中的至少部分进行扫描,使得可以自动根据上述目标扫描序列号确定上述执行次数,并循环执行上述目标SIMD指令,保证了扫描上述目标待扫描数据的速度较快,也避免了现有技术中需要大量代码完成对上述目标待扫描数据的扫描导致代码量高以及运行效率低的问题,解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了上述红外扫描的效率较高。
具体地,首先,建立一份上述扫描序列号与上述待扫描数据量的对应关系的索引表,然后,经过直接读表获取光线索引,并计算能使用SIMD处理的数据的次数,得到上述执行次数,最后,使用上述模具表SIMD指令循环对应次数,使得可以快速的扫描上述目标待扫描数据。
根据本申请的一种具体实施例,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,包括:获取第一字长以及上述扫描后数据的第二字长,上述第二字长小于上述第一字长,上述第一字长为执行一次上述目标SIMD指令的过程中,参与运算的数据长度;确定上述第一字长与上述第二字长的商为预定处理量;根据上述目标数据量以及上述预定处理量,确定上述执行次数。通过获取上述第一字长以及上述第二字长,并计算上述第一字长与上述第二字长的商,得到上述预定处理量,再根据上述目标数据量以及上述预定处理量,得到上述执行次数,保证了可以根据上述第一字长、上述第二字长以及上述目标数据量,自动计算得到上述执行次数,保证了上述执行次数的准确性较高,使得可以根据上述执行次数执行上述目标SIMD指令,进一步保证了通过上述SIMD指令扫描上述目标待扫描数据的速度较快,进一步保证了上述红外扫描的效率较高。
一种具体的实施例中,MCU的上述第一字长为32,上述第二字长为8或者16,那么,对应的上述预定处理量为4或者2,其中,上述第二字长8对应的上述预定处理量为4,上述第二字长16对应的上述预定处理量为2。
根据本申请的另一种具体实施例,根据上述目标数据量以及上述预定处理量,确定上述执行次数,包括:控制上述目标数据量与上述预定处理量相除,得到预定执行数;在上述预定执行数为整数的情况下,确定上述预定执行数为上述执行次数;在上述预定执行数不为整数的情况下,确定小于上述预定执行数的最大整数为上述执行次数。通过控制上述目标数据量与上述预定处理量相除,得到上述预定执行数,再根据上述预定执行数是否为整数,得到上述执行次数,其中,在上述预定执行数为整数的情况下,上述预定执行数为上述执行次数,在上述预定执行数不是整数的情况下,小于上述预定执行数的最大整数为上述执行次数,保证了可以快速且准确的得到上述执行次数,使得可以根据上述执行次数执行上述目标SIMD指令,进一步保证了通过上述SIMD指令扫描上述目标待扫描数据的速度较快,进一步保证了上述红外扫描的效率较高。
一种具体的实施例中,在上述预定处理量为4的情况下,如果上述目标数据量为100,那么上述预定执行数为100/4=25,即上述预定执行数为整数,那么,上述执行次数为25,如果上述目标数据量为101,那么上述预定执行数为101/4=25.25,即上述预定执行数不为整数,那么,上述执行次数为25。
为了进一步保证上述红外扫描的效率较高,根据本申请的又一种具体实施例,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:在上述预定执行数为上述整数的情况下,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据进行扫描,得到上述扫描后数据。在上述预定执行数为整数的情况下,直接按照上述执行次数,自动循环执行上述目标SIMD指令,使得可以快速地对上述目标待扫描数据进行扫描并得到上述扫描后数据,进一步保证了上述红外扫描的效率较高。
为了进一步保证上述红外扫描的效率较高,根据本申请的一种具体实施例,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据,还包括:在上述预定执行数不为上述整数的情况下,按照上述执行次数,执行上述目标SIMD指令,以对部分的上述目标待扫描数据进行扫描,得到第一数据;执行预定指令,以对剩余的上述目标待扫描数据进行扫描,得到第二数据,上述第一数据与上述第二数据构成上述扫描后数据,上述预定指令包括上述目标SIMD指令和/或C语言指令。在上述预定执行数不是整数的情况下,先按照上述执行次数执行上述目标SIMD指令,使得上述目标待扫描数据中的部分数据被扫描完成,再通过执行上述目标SIMD指令和/或C语言指令,使得可以通过两种方式扫描剩余的上述目标待扫描数据,进一步保证了上述红外扫描的效率较高。
当然,上述预定指令除了上述目标SIMD指令和/或C语言指令以外,还可以是其他可以执行相同任务的指令。
根据本申请的另一种具体实施例,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:执行步骤,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到第三数据;移动步骤,将上述第三数据移动或者拷贝到预定位置;循环步骤,依次执行上述执行步骤以及上述移动步骤,直到上述执行步骤的执行次数达到上述执行次数为止。在每次执行上述目标SIMD指令对上述目标待扫描数据的至少部分进行扫描,得到上述第三数据后,通过对上述第三数据进行移动或者拷贝,使得上述第三数据到达上述预定位置,并循环执行上述执行步骤以及上述移动步骤,使得可以快速地将扫描后的数据移动或者拷贝到上述预定位置,进一步保证了上述红外扫描的效率较高。
具体地,使用上述索引表和上述目标SIMD指令的对上述目标待扫描数据进行处理(包括拷贝、搬运以及计算),使得扫描帧率较快,保证了扫描时间MCU利用率较高,使用上述目标SIMD指令替换现有技术中的循环指令来处理上述目标待扫描数据,使得编译的固件代码量较小,运行效率较高。
一种具体的实施例中,单指令单数据(Single Instruction Single Data,SISD)的CPU对加法指令译码后,执行部件先访问内存,取得第一个操作数,之后再一次访问内存,取得第二个操作数,最后才能进行求和运算,然而,SIMD指令为单指令多数据流,在SIMD型的CPU中,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。
本申请实施例还提供了一种红外扫描的装置,需要说明的是,本申请实施例的红外扫描的装置可以用于执行本申请实施例所提供的用于红外扫描的方法。以下对本申请实施例提供的红外扫描的装置进行介绍。
图2是根据本申请实施例的红外扫描的装置的示意图。如图2所示,该装置包括建立单元10、第一确定单元20、第二确定单元30以及执行单元40,其中,上述建立单元10用于建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;上述第一确定单元20用于根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;上述第二确定单元30用于至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;上述执行单元40用于按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
上述红外扫描的装置中,通过上述建立单元建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;通过上述第一确定单元根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;通过上述第二确定单元至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;通过上述执行单元用于按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。相比现有技术中扫描单帧数据时间较长导致运行效率低的问题,本申请的上述红外扫描的装置,通过建立上述扫描序列号与上述待扫描数据量的对应关系,使得可以根据上述对应关系以及上述目标扫描序列号,确定上述目标数据量,并根据上述目标数据量确定上述目标待扫描数据对应的执行次数,再按照上述执行次数执行上述目标SIMD指令,对上述目标待扫描数据中的至少部分进行扫描,使得可以自动根据上述目标扫描序列号确定上述执行次数,并循环执行上述目标SIMD指令,保证了扫描上述目标待扫描数据的速度较快,也避免了现有技术中需要大量代码完成对上述目标待扫描数据的扫描导致代码量高以及运行效率低的问题,解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了上述红外扫描的效率较高。
具体地,首先,建立一份上述扫描序列号与上述待扫描数据量的对应关系的索引表,然后,经过直接读表获取光线索引,并计算能使用SIMD处理的数据的次数,得到上述执行次数,最后,使用上述模具表SIMD指令循环对应次数,使得可以快速的扫描上述目标待扫描数据。
根据本申请的一种具体实施例,上述第二确定单元包括获取模块、第一确定模块以及第二确定模块,其中,上述获取模块用于获取第一字长以及上述扫描后数据的第二字长,上述第二字长小于上述第一字长,上述第一字长为执行一次上述目标SIMD指令的过程中,参与运算的数据长度;上述第一确定模块用于确定上述第一字长与上述第二字长的商为预定处理量;上述第二确定模块用于根据上述目标数据量以及上述预定处理量,确定上述执行次数。通过获取上述第一字长以及上述第二字长,并计算上述第一字长与上述第二字长的商,得到上述预定处理量,再根据上述目标数据量以及上述预定处理量,得到上述执行次数,保证了可以根据上述第一字长、上述第二字长以及上述目标数据量,自动计算得到上述执行次数,保证了上述执行次数的准确性较高,使得可以根据上述执行次数执行上述目标SIMD指令,进一步保证了通过上述SIMD指令扫描上述目标待扫描数据的速度较快,进一步保证了上述红外扫描的效率较高。
一种具体的实施例中,MCU的上述第一字长为32,上述第二字长为8或者16,那么,对应的上述预定处理量为4或者2,其中,上述第二字长8对应的上述预定处理量为4,上述第二字长16对应的上述预定处理量为2。
根据本申请的另一种具体实施例,上述第二确定模块包括处理子模块、第一确定子模块以及第二确定子模块,其中,上述处理子模块用于控制上述目标数据量与上述预定处理量相除,得到预定执行数;上述第一确定子模块用于在上述预定执行数为整数的情况下,确定上述预定执行数为上述执行次数;上述第二确定子模块用于在上述预定执行数不为整数的情况下,确定小于上述预定执行数的最大整数为上述执行次数。通过控制上述目标数据量与上述预定处理量相除,得到上述预定执行数,再根据上述预定执行数是否为整数,得到上述执行次数,其中,在上述预定执行数为整数的情况下,上述预定执行数为上述执行次数,在上述预定执行数不是整数的情况下,小于上述预定执行数的最大整数为上述执行次数,保证了可以快速且准确的得到上述执行次数,使得可以根据上述执行次数执行上述目标SIMD指令,进一步保证了通过上述SIMD指令扫描上述目标待扫描数据的速度较快,进一步保证了上述红外扫描的效率较高。
一种具体的实施例中,在上述预定处理量为4的情况下,如果上述目标数据量为100,那么上述预定执行数为100/4=25,即上述预定执行数为整数,那么,上述执行次数为25,如果上述目标数据量为101,那么上述预定执行数为101/4=25.25,,即上述预定执行数不为整数,那么,上述执行次数为25。
为了进一步保证上述红外扫描的效率较高,根据本申请的又一种具体实施例,上述执行单元包括第一执行模块,上述第一执行模块用于在上述预定执行数为上述整数的情况下,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据进行扫描,得到上述扫描后数据。在上述预定执行数为整数的情况下,直接按照上述执行次数,自动循环执行上述目标SIMD指令,使得可以快速地对上述目标待扫描数据进行扫描并得到上述扫描后数据,进一步保证了上述红外扫描的效率较高。
为了进一步保证上述红外扫描的效率较高,根据本申请的一种具体实施例,上述执行单元还包括第二执行模块以及第三执行模块,其中,上述第二执行模块用于在上述预定执行数不为上述整数的情况下,按照上述执行次数,执行上述目标SIMD指令,以对部分的上述目标待扫描数据进行扫描,得到第一数据;上述第三执行模块用于执行预定指令,以对剩余的上述目标待扫描数据进行扫描,得到第二数据,上述第一数据与上述第二数据构成上述扫描后数据,上述预定指令包括上述目标SIMD指令和/或C语言指令。在上述预定执行数不是整数的情况下,先按照上述执行次数执行上述目标SIMD指令,使得上述目标待扫描数据中的部分数据被扫描完成,再通过执行上述目标SIMD指令和/或C语言指令,使得可以通过两种方式扫描剩余的上述目标待扫描数据,进一步保证了上述红外扫描的效率较高。
当然,上述预定指令除了上述目标SIMD指令和/或C语言指令以外,还可以是其他可以执行相同任务的指令。
根据本申请的另一种具体实施例,上述执行单元还包括第四执行模块、移动模块以及循环模块,其中,上述第四执行模块用于执行步骤,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到第三数据;上述移动模块用于移动步骤,将上述第三数据移动或者拷贝到预定位置;上述循环模块用于循环步骤,依次执行上述执行步骤以及上述移动步骤,直到上述执行步骤的执行次数达到上述执行次数为止。在每次执行上述目标SIMD指令对上述目标待扫描数据的至少部分进行扫描,得到上述第三数据后,通过对上述第三数据进行移动或者拷贝,使得上述第三数据到达上述预定位置,并循环执行上述执行步骤以及上述移动步骤,使得可以快速地将扫描后的数据移动或者拷贝到上述预定位置,进一步保证了上述红外扫描的效率较高。
具体地,使用上述索引表和上述目标SIMD指令的对上述目标待扫描数据进行处理(包括拷贝、搬运以及计算),使得扫描帧率较快,保证了扫描时间MCU利用率较高,使用上述目标SIMD指令替换现有技术中的循环指令来处理上述目标待扫描数据,使得编译的固件代码量较小,运行效率较高。
一种具体的实施例中,单指令单数据(Single Instruction Single Data,SISD)的CPU对加法指令译码后,执行部件先访问内存,取得第一个操作数,之后再一次访问内存,取得第二个操作数,最后才能进行求和运算,然而,SIMD指令为单指令多数据流,在SIMD型的CPU中,指令译码后几个执行部件同时访问内存,一次性获得所有操作数进行运算。
上述红外扫描的装置包括处理器和存储器,上述建立单元、上述第一确定单元、上述第二确定单元以及上述执行单元等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来解决现有技术中的扫描单帧数据时间较长导致运行效率低的问题。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
本发明实施例提供了一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时实现上述红外扫描的方法。
本发明实施例提供了一种处理器,上述处理器用于运行程序,其中,上述程序运行时执行上述红外扫描的方法。
本发明实施例提供了一种设备,设备包括处理器、存储器及存储在存储器上并可在处理器上运行的程序,处理器执行程序时实现至少以下步骤:
步骤S101,建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;
步骤S102,根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;
步骤S103,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;
步骤S104,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
本文中的设备可以是服务器、PC、PAD、手机等。
本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有至少如下方法步骤的程序:
步骤S101,建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;
步骤S102,根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;
步骤S103,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;
步骤S104,按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
根据本申请的另一种典型的实施例,还提供了一种MCU,上述MCU包括一个或多个处理器,存储器以及一个或多个程序,其中,上述一个或多个程序被存储在上述存储器中,并且被配置为由上述一个或多个处理器执行,上述一个或多个程序包括用于执行任一种上述的方法。
一种具体的实施例中,上述MCU的字长为32。
在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如上述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
上述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
上述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例上述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
从以上的描述中,可以看出,本申请上述的实施例实现了如下技术效果:
1)、本申请上述红外扫描的方法中,首先,建立待扫描数据扫描顺序的序号与待扫描数据的数量的对应关系;然后,根据目标待扫描数据的上述扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量;之后,至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;最后,按照上述执行次数执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。相比现有技术中扫描单帧数据时间较长导致运行效率低的问题,本申请的上述红外扫描的方法,通过建立上述扫描序列号与上述待扫描数据量的对应关系,使得可以根据上述对应关系以及上述目标扫描序列号,确定上述目标数据量,并根据上述目标数据量确定上述目标待扫描数据对应的执行次数,再按照上述执行次数执行上述目标SIMD指令,对上述目标待扫描数据中的至少部分进行扫描,使得可以自动根据上述目标扫描序列号确定上述执行次数,并循环执行上述目标SIMD指令,保证了扫描上述目标待扫描数据的速度较快,也避免了现有技术中需要大量代码完成对上述目标待扫描数据的扫描导致代码量高以及运行效率低的问题,解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了上述红外扫描的效率较高。
2)、本申请的上述红外扫描的装置中,通过上述建立单元建立扫描序列号与待扫描数据量的对应关系,上述扫描序列号为表征待扫描数据的扫描顺序的序号,上述待扫描数据量为上述待扫描数据的数量;通过上述第一确定单元根据目标扫描序列号以及上述对应关系,确定上述目标扫描序列号对应的上述待扫描数据量为目标数据量,上述目标扫描序列号为目标待扫描数据的上述扫描序列号;通过上述第二确定单元至少根据上述目标数据量,确定上述目标待扫描数据对应的目标SIMD指令的执行次数,上述目标SIMD指令为扫描上述目标待扫描数据时使用的指令;通过上述执行单元用于按照上述执行次数,执行上述目标SIMD指令,以对上述目标待扫描数据的至少部分进行扫描,得到扫描后数据。相比现有技术中扫描单帧数据时间较长导致运行效率低的问题,本申请的上述红外扫描的装置,通过建立上述扫描序列号与上述待扫描数据量的对应关系,使得可以根据上述对应关系以及上述目标扫描序列号,确定上述目标数据量,并根据上述目标数据量确定上述目标待扫描数据对应的执行次数,再按照上述执行次数执行上述目标SIMD指令,对上述目标待扫描数据中的至少部分进行扫描,使得可以自动根据上述目标扫描序列号确定上述执行次数,并循环执行上述目标SIMD指令,保证了扫描上述目标待扫描数据的速度较快,也避免了现有技术中需要大量代码完成对上述目标待扫描数据的扫描导致代码量高以及运行效率低的问题,解决了现有技术中扫描单帧数据时间较长导致运行效率低的问题,保证了上述红外扫描的效率较高。
以上所述仅为本申请的优选实施例而已,并不用于限制本申请,对于本领域的技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本申请的保护范围之内。

Claims (10)

1.一种红外扫描的方法,其特征在于,所述方法包括:
建立扫描序列号与待扫描数据量的对应关系,所述扫描序列号为表征待扫描数据的扫描顺序的序号,所述待扫描数据量为所述待扫描数据的数量;
根据目标扫描序列号以及所述对应关系,确定所述目标扫描序列号对应的所述待扫描数据量为目标数据量,所述目标扫描序列号为目标待扫描数据的所述扫描序列号;
至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,所述目标SIMD指令为扫描所述目标待扫描数据时使用的指令;
按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
2.根据权利要求1所述的方法,其特征在于,至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,包括:
获取第一字长以及所述扫描后数据的第二字长,所述第二字长小于所述第一字长,所述第一字长为执行一次所述目标SIMD指令的过程中,参与运算的数据长度;
确定所述第一字长与所述第二字长的商为预定处理量;
根据所述目标数据量以及所述预定处理量,确定所述执行次数。
3.根据权利要求2所述的方法,其特征在于,根据所述目标数据量以及所述预定处理量,确定所述执行次数,包括:
控制所述目标数据量与所述预定处理量相除,得到预定执行数;
在所述预定执行数为整数的情况下,确定所述预定执行数为所述执行次数;
在所述预定执行数不为整数的情况下,确定小于所述预定执行数的最大整数为所述执行次数。
4.根据权利要求3所述的方法,其特征在于,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:
在所述预定执行数为所述整数的情况下,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据进行扫描,得到所述扫描后数据。
5.根据权利要求3所述的方法,其特征在于,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,还包括:
在所述预定执行数不为所述整数的情况下,按照所述执行次数,执行所述目标SIMD指令,以对部分的所述目标待扫描数据进行扫描,得到第一数据;
执行预定指令,以对剩余的所述目标待扫描数据进行扫描,得到第二数据,所述第一数据与所述第二数据构成所述扫描后数据,所述预定指令包括所述目标SIMD指令和/或C语言指令。
6.根据权利要求1至5中任一项所述的方法,其特征在于,按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据,包括:
执行步骤,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到第三数据;
移动步骤,将所述第三数据移动或者拷贝到预定位置;
循环步骤,依次执行所述执行步骤以及所述移动步骤,直到所述执行步骤的执行次数达到所述执行次数为止。
7.一种红外扫描的装置,其特征在于,所述装置包括:
建立单元,用于建立扫描序列号与待扫描数据量的对应关系,所述扫描序列号为表征待扫描数据的扫描顺序的序号,所述待扫描数据量为所述待扫描数据的数量;
第一确定单元,用于根据目标扫描序列号以及所述对应关系,确定所述目标扫描序列号对应的所述待扫描数据量为目标数据量,所述目标扫描序列号为目标待扫描数据的所述扫描序列号;
第二确定单元,用于至少根据所述目标数据量,确定所述目标待扫描数据对应的目标SIMD指令的执行次数,所述目标SIMD指令为扫描所述目标待扫描数据时使用的指令;
执行单元,用于按照所述执行次数,执行所述目标SIMD指令,以对所述目标待扫描数据的至少部分进行扫描,得到扫描后数据。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质包括存储的程序,其中,所述程序执行权利要求1至6中任意一项所述的方法。
9.一种处理器,其特征在于,所述处理器用于运行程序,其中,所述程序运行时执行权利要求1至6中任意一项所述的方法。
10.一种MCU,其特征在于,包括:一个或多个处理器,存储器以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行权利要求1至6中任意一项所述的方法。
CN202210858415.7A 2022-07-20 2022-07-20 红外扫描的方法以及其装置 Active CN116719559B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210858415.7A CN116719559B (zh) 2022-07-20 2022-07-20 红外扫描的方法以及其装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210858415.7A CN116719559B (zh) 2022-07-20 2022-07-20 红外扫描的方法以及其装置

Publications (2)

Publication Number Publication Date
CN116719559A true CN116719559A (zh) 2023-09-08
CN116719559B CN116719559B (zh) 2024-06-11

Family

ID=87863714

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210858415.7A Active CN116719559B (zh) 2022-07-20 2022-07-20 红外扫描的方法以及其装置

Country Status (1)

Country Link
CN (1) CN116719559B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160203149A1 (en) * 2014-08-25 2016-07-14 Biadu Online Network Technology (Beijing) Co., Ltd File scanning method and apparatus related application
US20180288278A1 (en) * 2017-03-28 2018-10-04 Brother Kogyo Kabushiki Kaisha Image processing apparatus that specifies edge pixel in target image using single-component image data
CN111158757A (zh) * 2019-12-31 2020-05-15 深圳芯英科技有限公司 并行存取装置和方法以及芯片
US10725788B1 (en) * 2019-03-25 2020-07-28 Intel Corporation Advanced error detection for integer single instruction, multiple data (SIMD) arithmetic operations
CN111897579A (zh) * 2020-08-18 2020-11-06 腾讯科技(深圳)有限公司 图像数据处理方法、装置、计算机设备和存储介质
CN112230995A (zh) * 2020-10-13 2021-01-15 广东省新一代通信与网络创新研究院 一种指令的生成方法、装置以及电子设备
CN112346782A (zh) * 2019-08-07 2021-02-09 腾讯科技(深圳)有限公司 一种函数中数据处理方法、装置、设备及存储介质
CN112398966A (zh) * 2020-11-12 2021-02-23 北京知道创宇信息技术股份有限公司 测绘方法、装置、网络设备及可读存储介质
CN112651489A (zh) * 2020-12-22 2021-04-13 龙芯中科(合肥)技术有限公司 操作处理方法、装置、用于操作处理的装置及存储介质
CN113254412A (zh) * 2020-02-12 2021-08-13 彩虹无线(北京)新技术有限公司 一种数据转换方法和装置
CN113934455A (zh) * 2020-06-29 2022-01-14 华为技术有限公司 指令转换方法及装置
US20220129269A1 (en) * 2020-10-26 2022-04-28 Google Llc Bit-Packed Array Processing Using SIMD

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160203149A1 (en) * 2014-08-25 2016-07-14 Biadu Online Network Technology (Beijing) Co., Ltd File scanning method and apparatus related application
US20180288278A1 (en) * 2017-03-28 2018-10-04 Brother Kogyo Kabushiki Kaisha Image processing apparatus that specifies edge pixel in target image using single-component image data
US10725788B1 (en) * 2019-03-25 2020-07-28 Intel Corporation Advanced error detection for integer single instruction, multiple data (SIMD) arithmetic operations
CN112346782A (zh) * 2019-08-07 2021-02-09 腾讯科技(深圳)有限公司 一种函数中数据处理方法、装置、设备及存储介质
CN111158757A (zh) * 2019-12-31 2020-05-15 深圳芯英科技有限公司 并行存取装置和方法以及芯片
CN113254412A (zh) * 2020-02-12 2021-08-13 彩虹无线(北京)新技术有限公司 一种数据转换方法和装置
CN113934455A (zh) * 2020-06-29 2022-01-14 华为技术有限公司 指令转换方法及装置
CN111897579A (zh) * 2020-08-18 2020-11-06 腾讯科技(深圳)有限公司 图像数据处理方法、装置、计算机设备和存储介质
CN112230995A (zh) * 2020-10-13 2021-01-15 广东省新一代通信与网络创新研究院 一种指令的生成方法、装置以及电子设备
US20220129269A1 (en) * 2020-10-26 2022-04-28 Google Llc Bit-Packed Array Processing Using SIMD
CN112398966A (zh) * 2020-11-12 2021-02-23 北京知道创宇信息技术股份有限公司 测绘方法、装置、网络设备及可读存储介质
CN112651489A (zh) * 2020-12-22 2021-04-13 龙芯中科(合肥)技术有限公司 操作处理方法、装置、用于操作处理的装置及存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
刘广;肖创柏;欧阳万里;苏开娜;: "基于VLIW的汇编级FDCT和扫描量化优化算法", 计算机工程与应用, no. 03, 21 January 2006 (2006-01-21), pages 59 - 62 *
李海英;杨东升;张力;: "数控系统程序预处理技术研究", 组合机床与自动化加工技术, no. 01, 20 January 2014 (2014-01-20), pages 75 - 79 *

Also Published As

Publication number Publication date
CN116719559B (zh) 2024-06-11

Similar Documents

Publication Publication Date Title
US11003429B1 (en) Compile-time scheduling
US20210158131A1 (en) Hierarchical partitioning of operators
US20210304010A1 (en) Neural network training under memory restraint
US11175919B1 (en) Synchronization of concurrent computation engines
US11210127B2 (en) Method and apparatus for processing request
US20240273163A1 (en) Accelerator for sparse matrix multiplication in neural networks
EP3367310A1 (en) Method and apparatus for parallelizing layers of deep neural networks onto parallel computing systems
WO2021118857A1 (en) Hardware accelerator having reconfigurable instruction set
Zhou et al. Mocha: Multinode cost optimization in heterogeneous clouds with accelerators
US10922146B1 (en) Synchronization of concurrent computation engines
CN116719559B (zh) 红外扫描的方法以及其装置
US9104490B2 (en) Methods, systems and apparatuses for processor selection in multi-processor systems
Silva et al. SmartRank: a smart scheduling tool for mobile cloud computing
Aach et al. Large scale performance analysis of distributed deep learning frameworks for convolutional neural networks
CN116069393A (zh) 一种数据处理方法以及相关装置
US11841792B1 (en) Instructions with multiple memory access modes
US20230236814A1 (en) Code processing method, apparatus, and device
CN110032407A (zh) 提升cpu并行性能的方法及装置和电子设备
CN115018383A (zh) 任务分配方法、装置、设备及存储介质
Li et al. Inference latency prediction at the edge
US11625453B1 (en) Using shared data bus to support systolic array tiling
US11875247B1 (en) Input batching with serial dynamic memory access
US11372677B1 (en) Efficient scheduling of load instructions
CN114064125A (zh) 指令解析方法、装置及电子设备
CN110442619A (zh) 搜索结果排序方法、装置、电子设备及存储介质

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