【技术实现步骤摘要】
【国外来华专利技术】用于验证应用的方法和设备
本专利技术针对于在图形处理单元(GPU)上执行的应用,且更特定来说,针对于此些应用的验证。
技术介绍
图形处理单元(GPU)传统上已经受限于仅在固定功能管线中执行图形相关处理,这提供非常有限的功能灵活性。较新的GPU包含执行程序的可编程核心,且进而提供与传统GPU相比的更大的功能灵活性。所述可编程核心可执行图形相关应用和非图形相关应用两者。
技术实现思路
一般来说,本专利技术涉及用于在执行之前识别将在图形处理单元(GPU)上执行的潜在有问题的应用。有问题的应用的实例包含,但不限于,恶意应用以及低效或者易于出错的应用。举例来说,在收容GPU的装置外部的服务器装置可验证所述应用。对所述应用的验证可意味着所述应用满足一或多个准则。作为一个实例,验证可指以某一确保水平确定所述应用不是恶意应用、易于出错的应用,或低效的应用。所述服务器装置可将指示传输到所述装置,所述指示指示GPU执行所述应用是否为安全的或不妥当的。所述装置可随后基于所接收的指示而选择在GPU上执行程序。在一个实例中,本专利技术描述一种方法,其包含使用服务器装置接收将由驻留于所述服务器装置外部的装置上的图形处理单元(GPU)执行的应用。所述方法还包含使用所述服务器装置执行以下各者中的至少一者:在所述应用在所述服务器装置上的编译之前和期间执行对所述应用的分析,及在所述应用在所述服务器装置上的执行期间执行对所述应用的分析。所述方法进一步包含基于所述分析中的至少一者来确定所述应用是否满足一或多个性能准则,且在所述应用满足所述一或多个性能准则的情况下将对所述应用的验证传输到所述装置。在另 ...
【技术保护点】
一种方法,其包括:使用服务器装置接收将由驻留于所述服务器装置外部的装置上的图形处理单元GPU执行的应用;使用所述服务器装置执行以下各者中的至少一者:在所述应用在所述服务器装置上的编译之前和期间对所述应用的分析;及在所述应用在所述服务器装置上的执行期间对所述应用的分析;基于所述分析中的至少一者来确定所述应用是否满足一或多个性能准则;及在所述应用满足所述一或多个性能准则的情况下将对所述应用的验证传输到所述装置。
【技术特征摘要】
【国外来华专利技术】2012.02.27 US 13/406,2721.一种用于验证应用的方法,其包括:通过服务器装置接收将由驻留于所述服务器装置外部的外部装置上的图形处理单元GPU执行的所述应用;通过所述服务器装置确定所述应用将在所述GPU上以一效率执行,其中所述效率是基于对存储器的存取的数目和处理时间量中的至少一者而确定的;通过所述服务器装置且基于所述确定,修改所述应用的代码以产生将在所述GPU上比所接收的具有所确定效率的应用更有效地执行的所述应用的经修改的版本;通过所述服务器装置在所述应用的所述经修改的版本在所述服务器装置上的执行期间执行对所述应用的所述经修改的版本的分析,其中执行所述分析包括:执行虚拟GPU模型;在所述虚拟GPU模型上执行所述应用的所述经修改的版本;及在所述应用的所述经修改的版本在所述虚拟GPU模型上的所述执行期间分析所述虚拟GPU模型的功能性;基于所述分析而确定所述应用的所述经修改的版本是否满足一或多个性能准则;将所述应用的经修改的代码传输到所述外部装置;及在所述应用满足所述一或多个性能准则的情况下将对所述应用的验证传输到所述外部装置。2.根据权利要求1所述的方法,其中所述性能准则包括以下各者中的至少一者:确定所述应用不存在恶意的代码,及确定所述应用不是易于出错的。3.根据权利要求1所述的方法,其中所述性能准则包含以下各者中的一或多者:确定所述应用的代码不包含已知病毒的代码、确定在所述应用的所述代码的编译期间确定未发现错误、确定在所述应用的执行期间确定不存在出界的存储器存取、确定在所述应用的执行期间确定所述外部装置的系统总线未过载、确定所述应用的任务在阈值执行时间内完成执行,及确定所述应用的所述任务至少以阈值执行速率执行。4.根据权利要求1所述的方法,其中在编译之前和期间执行对所述应用的所述分析包括将所述应用的代码与已知病毒的代码进行比较,且确定在所述应用的所述代码的编译期间是否发现任何错误。5.根据权利要求1所述的方法,其进一步包括:执行虚拟装置模型;及在所述应用在所述GPU模型上的所述执行期间分析所述虚拟装置模型的功能性。6.根据权利要求1所述的方法,其中在所述虚拟GPU模型上执行所述应用包括将GPU输入输入到在所述虚拟GPU模型上执行的所述应用。7.根据权利要求1所述的方法,其进一步包括:监视由所执行的应用的所述经修改的版本执行的功能。8.根据权利要求7所述的方法,其中监视功能包括以下各者中的一或多者:监视所执行的应用进行的存储器存取、监视执行的速率,及监视执行时间。9.根据权利要求1所述的方法,其中接收所述应用进一步包括接收驻留于所述服务器装置外部的所述外部装置上的所述GPU的识别,所述方法进一步包括:基于所述GPU的所接收的识别而识别多个虚拟GPU模型的特定虚拟GPU模型,其中执行所述虚拟GPU模型包括执行所识别的特定虚拟GPU模型,且其中在所述虚拟GPU模型上执行所述应用的所述经修改的版本包括在所识别的特定虚拟GPU模型上执行所述应用的所述经修改的版本。10.根据权利要求9所述的方法,其中修改所述应用的所述代码进一步包括基于所述GPU的所接收的识别来修改所述应用的代码。11.根据权利要求1所述的方法,其进一步包括:在硬件仿真板上执行所述应用;及在所述执行期间分析所述硬件仿真板的功能性,其中确定所述应用是否满足一或多个性能准则包括基于所述分析中的至少一者来确定所述应用是否满足一或多个性能准则。12.根据权利要求1所述的方法,其中接收所述应用包括接收所述应用的源代码和中间代码中的至少一者,所述方法进一步包括:编译所述应用的所述源代码和所述中间代码中的至少一者以产生所述应用的目标代码;及将所述应用的所述目标代码传输到所述外部装置。13.一种用于验证应用的设备,其包括:存储器;仿真器单元,其经配置以:接收将由驻留于所述设备外部的装置上的图形处理单元GPU执行的所述应用;确定所述应用将在所述GPU上以一效率执行,其中所述效率是基于对存储器的存取的数目和处理时间量中的至少一者而确定的;基于所述确定,修改所述应用的代码以产生将在所述GPU上比所接收的具有所确定效率的应用更有效地执行的所述应用的经修改的版本;在所述应用的所述经修改的版本在所述设备上的执行期间执行对所述应用的所述经修改的版本的分析,其中为了在执行期间执行对所述应用的所述经修改的版本的所述分析,所述仿真器单元经配置以:执行存储在所述存储器中的虚拟GPU模型;在所述虚拟GPU模型上执行所述应用的所述经修改的版本;及在所述应用的所述经修改的版本在所述GPU模型上的执行期间分析所述虚拟GPU模型的功能性;基于所述分析而确定所述应用的所述经修改的版本是否满足一或多个性能准则;将所述应用的经修改的代码传输到所述装置;及在所述应用的所述经修改的版本满足所述一或多个性能准则的情况下将对所述应用的验证传输到所述装置。14.根据权利要求13所述的设备,其中所述性能准则包括以下各者中的至少一者:确定所述应用不存在恶意的代码,及确定所述应用不是易于出错的。15.根据权利要求13所述的设备,其中所述性能准则包含以下各者中的一或多者:确定所述应用的代码不包含已知病毒的代码、确定在所述应用的所述代码的编译期间确定未发现错误、确定在所述应用的执行期间确定不存在出界的存储器存取、确定在所述应用的执行期间确定所述装置的系统总线未过载、确定所述应用的任务在阈值执行时间内完成执行,及确定所述应用的所述任务至少以阈值执行速率执行。16.根据权利要求13所述的设备,其中所述仿真器单元将所述应用的代码与已知病毒的代码进行比较,且确定在所述应用的所述代码的编译期间是否发现任何错误,以在编译之前和期间执行对所述应用的所述分析。17.根据权利要求13所述的设备,其中所述仿真器单元进一步经配置以:执行存储在所述存储器中的虚拟装置模型;及在所述应用在所述GPU模型上的所述执行期间分析所述虚拟装置模型的功能性。18.根据权利要求13所述的设备,其中所述仿真器单元在所述应用在所述虚拟GPU模型上的所述执行期间将存储在所述存储器中的GPU输入输入到在所述虚拟GPU模型上执行的所述应用。19.根据权利要求13所述的设备,其中所述仿真器单元进一步经配置以监视由所执行的应用的所述经修改的版本执行的功能。20.根据权利要求19所述的设备,其中所述仿真器单元经配置以监视以下各者中的一或多者:所执行的应用进行的存储器存取、执行的比率,及执行时间。21.根...
【专利技术属性】
技术研发人员:阿列克谢·V·布尔德,杰伊·春苏普·云,
申请(专利权)人:高通股份有限公司,
类型:发明
国别省市:美国;US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。