[發明專利]用于提供原子范圍操作的指令和邏輯有效
| 申請號: | 201680018796.0 | 申請日: | 2016-03-02 |
| 公開(公告)號: | CN107430508B | 公開(公告)日: | 2021-09-14 |
| 發明(設計)人: | I.帕爾多;O.本-基基;A.D.羅比遜;N.查克蒙;J.H.考尼 | 申請(專利權)人: | 英特爾公司 |
| 主分類號: | G06F9/30 | 分類號: | G06F9/30;G06F9/355 |
| 代理公司: | 中國專利代理(香港)有限公司 72001 | 代理人: | 徐紅燕;張濤 |
| 地址: | 美國加利*** | 國省代碼: | 暫無信息 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 用于 提供 原子 范圍 操作 指令 邏輯 | ||
指令和邏輯在多處理系統中提供原子范圍操作。在一個實施例中,原子范圍修改指令指定用于范圍索引的集合的地址。指令鎖定對范圍索引的集合的訪問,并加載范圍索引以檢查范圍大小。將范圍大小與足以執行范圍修改的大小進行比較。如果范圍大小足以執行范圍修改,則執行范圍修改,并將范圍索引的集合的一個或多個已修改的范圍索引存儲回存儲器。否則,當范圍大小不足以執行所述范圍修改時,設置錯誤信號。響應于原子范圍修改指令的完成,解鎖對范圍索引的集合的訪問。實施例可以包括原子增量next指令、加next指令、減量end指令和/或減end指令。
技術領域
本公開涉及處理邏輯、微處理器以及相關聯的指令集架構的領域,這些指令集架構在被處理器或其它處理邏輯執行時實行加載、存儲、邏輯、數學或其它功能操作。具體而言,本公開涉及用于提供原子范圍操作的指令和邏輯。
背景技術
在多處理中,處理器或邏輯處理器可以采用多線程邏輯來并發地或并行地執行可執行指令的多個線程。并行編程的最常見形式之一稱為單程序多數據(SPMD)。SPMD是用于實現并行性的技術,其中任務被分割并利用不同輸入在多個處理器(或邏輯處理器)上同時運行,以便更快地獲得結果。多個自主處理器(或邏輯處理器)可以在獨立執行點處同時執行相同的程序。
SPMD與單指令多數據(SIMD)的不同之處在于,與SIMD對不同數據施加的逐指令的前后緊接的方式(lockstep)不同,SPMD可以用于調用函數的多個實例,或者在多個處理器(或邏輯處理器)上并行地執行循環的多個迭代。并行編程的這兩種形式并不相互排斥。例如,SPMD程序也可以采用SIMD指令。
事實上,當前的計算機可以允許同時利用許多并行模式以獲得最大的組合效果。分布式存儲器程序可以在一群節點上運行。每個節點可以是共享存儲器計算機,并且在多個處理器(或邏輯處理器)上并行地執行。在每個處理器內,SIMD向量指令可以使用超標量指令執行(通常由CPU透明地處置)、流水線化和多個并行功能單元,以實現最大的單CPU速度。
隨著這些各種形式的并行性被一起采用,可以降低執行單獨的SPMD任務所需的處理時間,而執行實時同步(例如,分割任務、將任務分配給多個處理器(或邏輯處理器)、以及通過共享存儲器進行通信)所需的處理時間成為更顯著的開銷挑戰,這可能限制了原本同時利用如此多種形式的并行性所預期的性能增益。
到目前為止,尚未充分探索解決這些挑戰、潛在的性能限制問題和實時復雜性的解決方案。
附圖說明
在附圖的各圖中通過示例而非限制的方式圖示出本發明。
圖1A是執行用于提供原子范圍操作的指令的系統的一個實施例的框圖。
圖1B是執行用于提供原子范圍操作的指令的系統的另一實施例的框圖。
圖1C是執行用于提供原子范圍操作的指令的系統的另一實施例的框圖。
圖2是執行用于提供原子范圍操作的指令的處理器的一個實施例的框圖。
圖3A圖示出根據一個實施例的打包數據類型。
圖3B圖示出根據一個實施例的打包數據類型。
圖3C圖示出根據一個實施例的打包數據類型。
圖3D圖示出根據一個實施例的用于提供原子范圍操作的指令編碼。
圖3E圖示出根據另一實施例的用于提供原子范圍操作的指令編碼。
圖3F圖示出根據另一實施例的用于提供原子范圍操作的指令編碼。
圖3G圖示出根據另一實施例的用于提供原子范圍操作的指令編碼。
圖3H圖示出根據另一實施例的用于提供原子范圍操作的指令編碼。
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于英特爾公司,未經英特爾公司許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201680018796.0/2.html,轉載請聲明來源鉆瓜專利網。





