The invention relates to a CPU/GPU synchronization mechanism. You can use a thread on a processor to enable another processor to lock or release mutex. For example, a central processing unit thread can be used by a graphics processing unit to protect mutual exclusion of shared memory.
【技术实现步骤摘要】
CPU/GPU同步机制本申请是申请日为2012年6月29日申请号为第201280037791.4号专利技术名称为“CPU/GPU同步机制”的中国专利申请的分案申请。
技术介绍
这一般地涉及具有通用处理器和图形处理单元的计算机。运行在通用或中央处理单元上由用户应用所使用的存储器和由图形处理单元所使用的处理器通常是分开的。图形处理单元驱动器将数据从用户空间复制到驱动器存储器以在图形处理单元上进行处理。在共享的虚拟存储器模型中,数据没有被复制到图形处理单元,而是相反地,它在图形处理单元和中央处理单元之间共享。当前,在多线程应用中,共享的数据由称为互斥的锁来保护。每个想要访问共享数据的线程都必须首先对相对应的互斥上锁以阻止其它线程访问该互斥。此上锁可以通过锁上的“回旋(spinning)”来进行,但这个技术从功率和性能的角度效率不高。为了优化中央处理单元,操作系统提供允许线程休眠直到有互斥可用、然后当互斥被解锁时通知其它线程的系统调用。但这个机制只对于运行在中央处理单元核上的线程生效。附图说明图1是本专利技术的一个实施例的示意图;图2是根据本专利技术的一个实施例的扩展线程和存储器模型;图3是根据本专利技术的一个实施例的页错误处理的流程图;以及图4是一个实施例的系统图。具体实施方式在一个实施例中,对每个运行在图形处理器上的线程群,可以创建运行在中央处理单元上的辅助影子线程。当运行在图形处理单元上的线程想要对互斥上锁时,如果它想要等待直到该线程由其它任务释放,则图形线程向中央处理单元上的影子线程发送请求。中央处理单元上的影子线程向操作系统发出相对应的系统调用。当操作系统将锁 ...
【技术保护点】
一种处理设备,包括:主中央处理单元(CPU),用于执行库的第一线程;与所述主CPU耦合的图形处理单元(GPU),所述主CPU和所述GPU用于共享到共享虚拟地址空间的访问,所述第一线程用于同步到所述共享虚拟地址空间的访问;其中所述第一线程用于同步第二线程和第三线程之间的访问,所述第二线程用于在所述主CPU上执行,所述第三线程用于在所述GPU上执行;以及其中所述第一线程用于经由获取操作和释放操作来同步访问。
【技术特征摘要】
2011.07.29 US 13/193,7791.一种处理设备,包括:主中央处理单元(CPU),用于执行库的第一线程;与所述主CPU耦合的图形处理单元(GPU),所述主CPU和所述GPU用于共享到共享虚拟地址空间的访问,所述第一线程用于同步到所述共享虚拟地址空间的访问;其中所述第一线程用于同步第二线程和第三线程之间的访问,所述第二线程用于在所述主CPU上执行,所述第三线程用于在所述GPU上执行;以及其中所述第一线程用于经由获取操作和释放操作来同步访问。2.如权利要求1所述的处理设备,其特征在于,所述第三线程用于经由所述获取操作来访问所述共享虚拟地址空间中的数据并且等待所述数据直到所述第二线程释放所述数据。3.如权利要求2所述的处理设备,其特征在于,所述第三线程用于经由所述释放操作在所述访问后释放所述数据,所述释放使所述第二线程能访问所述数据。4.如权利要求1-3的任一项所述的处理设备,其特征在于,所述GPU用于在从所述主CPU接收到信号消息时唤醒所述第三线程。5.如权利要求4所述的处理设备,其特征在于,所述第一线程用于允许所述主CPU和所述GPU之间的信号消息。6.如权利要求1所述的处理设备,其特征在于,所述第一线程用于同步所述第三线程和所述第一线程之间的访问。7.如权利要求1所述的处理设备,其特征在于,所述主CPU和所述GPU集成在一个集成电路内。8.如权利要求7所述的处理设备,其特征在于,所述主CPU包括多个处理核。9.如权利要求8所述的处理设备,其特征在于,所述GPU是多线程的多核并行处理器。10.一种异构处理系统,包括:多个异构处理器,包括主CPU以及与所述主CPU耦合的GPU;由所述主CPU和所述GPU共享的存储器,其中所述存储器包括共享虚拟地址空间;以及用于在所述主CPU上执行的第一线程,用于同步所述主CPU上的第二线程与所述GPU上的第三线程的存储器访问,其中所述第一线程用于经由获取操作和释放操作来同步访问。11.如权利要求10所述的异构处理系统,其特征在于,所述GPU上的所述第三线程用于请求获得对所述共享虚拟地址空间中的数据...
【专利技术属性】
技术研发人员:B·靳兹伯格,E·纳坦森,I·殴萨池依,Y·扎克,
申请(专利权)人:英特尔公司,
类型:发明
国别省市:美国,US
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。