TW201907297A - 用於半導體檢查及計量系統之可擴展及彈性工作分佈架構 - Google Patents

用於半導體檢查及計量系統之可擴展及彈性工作分佈架構 Download PDF

Info

Publication number
TW201907297A
TW201907297A TW107117446A TW107117446A TW201907297A TW 201907297 A TW201907297 A TW 201907297A TW 107117446 A TW107117446 A TW 107117446A TW 107117446 A TW107117446 A TW 107117446A TW 201907297 A TW201907297 A TW 201907297A
Authority
TW
Taiwan
Prior art keywords
worker
job
node
cpu
tasks
Prior art date
Application number
TW107117446A
Other languages
English (en)
Other versions
TWI782023B (zh
Inventor
艾潔 古普傑
桑卡 梵卡泰若曼
沙西 巴拉辛干
摩漢 馬哈迪文
Original Assignee
美商克萊譚克公司
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 美商克萊譚克公司 filed Critical 美商克萊譚克公司
Publication of TW201907297A publication Critical patent/TW201907297A/zh
Application granted granted Critical
Publication of TWI782023B publication Critical patent/TWI782023B/zh

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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • 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/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • G06F9/4881Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • G06F9/505Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering the load
    • 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5066Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Testing Or Measuring Of Semiconductors Or The Like (AREA)
  • Stored Programmes (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本發明揭示用於半導體檢查及計量之高頻寬、混合處理器計算系統之即時工作分佈軟體架構。為了滿足計算需要,該成像處理電腦架構可藉由改變CPU及GPU之數量而係可擴展的。使用一主節點及一或多個工作者節點來界定該架構,以針對最大處理量平行運行影像處理工作。該主節點可接收來自一半導體晶圓或倍縮光罩之輸入影像資料。基於該輸入影像資料的工作被分佈至該等工作者節點中之一者。各工作者節點可包含至少一個CPU及至少一個GPU。該影像處理工作可含有多個任務,且可使用一工作者工作管理員來將該等任務之各者指派至該工作者節點中之該CPU或GPU之一者以處理該影像。

Description

用於半導體檢查及計量系統之可擴展及彈性工作分佈架構
本發明係關於半導體檢查及計量系統。
半導體製造行業之演進對良率管理及特定言之計量及檢查系統提出更高要求。臨界尺寸不斷縮減。經濟性驅動行業縮短達成高良率、高價值生產之時間。最小化從偵測到一良率問題至解決它之總時間判定一半導體製造商之投資報酬。
製造諸如邏輯及記憶體裝置之半導體裝置通常包含使用較大數目個製造程序處理一半導體晶圓以形成半導體裝置之各種特徵及多個層級。例如,微影係涉及將一圖案自一倍縮光罩轉印至配置於一半導體晶圓上之一光阻之一半導體製造程序。半導體製造程序之額外實例包含但不限於化學機械拋光(CMP)、蝕刻、沈積及離子植入。可在一單一半導體晶圓上之一配置中製造多個半導體裝置,且接著將其等分離成個別半導體裝置。
在一半導體製程期間之各種步驟使用檢查程序以偵測晶圓上之缺陷以促進製程中之更高良率及因此更高利潤。檢查通常為製造半導體裝置(諸如積體電路(IC))之一重要部分。然而,隨著半導體裝置之尺寸減小,檢查對於成功製造可接受半導體裝置變得更加重要,此係因為較小缺陷可導致裝置故障。例如,隨著半導體裝置之尺寸減小,縮小大小之缺陷之偵測已變得必要,此係由於甚至相對小之缺陷可導致半導體裝置中之非所要像差。
缺陷檢視通常涉及再偵測藉由一檢查程序偵測之缺陷且使用一高放大率光學系統或一掃描電子顯微鏡(SEM)以按一更高解析度產生關於缺陷之額外資訊。通常在樣本上之離散位置(其中已藉由檢查而偵測缺陷)處執行缺陷檢視。藉由缺陷檢視產生之缺陷之更高解析度資料更適用於判定缺陷之屬性(諸如輪廓、粗糙度、或更準確大小資訊)。
在一半導體製程期間之各種步驟中亦使用計量程序來監測且控制程序。計量程序與檢查程序不同之處在於:不同於其中在樣本上偵測缺陷之檢查程序,計量程序用於量測無法使用當前所使用之檢查工具判定之樣本之一或多個特性。舉例而言,計量程序用於量測樣本之一或多個特性(諸如在一程序期間形成於樣本上之特徵之一尺寸(例如,線寬、厚度等)),使得可自該一或多個特性判定程序之效能。另外,若樣本之一或多個特性係不可接受的(例如,在該(等)特性之一預定範圍之外),則可使用樣本之一或多個特性之量測來更改程序之一或多個參數,使得由該程序製造之額外樣本具有(若干)可接受特性。
計量程序與缺陷檢視程序不同之處亦在於,不同於其中在缺陷檢視中再訪問藉由檢查偵測之缺陷之缺陷檢視程序,計量程序可在未偵測到缺陷之位置處執行。換言之,不同於缺陷檢視,在樣本上執行一計量程序之位置可獨立於對樣本執行之一檢查程序之結果。特定言之,可獨立於檢查結果選擇執行一計量程序之位置。
半導體檢查及計量工具一般為即時、高頻寬嵌入式系統。半導體檢查及計量工具不包含跨不同處理器類型(例如,CPU及GPU)動態分佈計算負載之工作分佈系統。半導體檢查及計量工具亦不包含混合(例如,CPU及GPU)影像處理系統。
因此,針對半導體檢查及計量工具需要一改良式工作分佈架構。
在一第一實施例中提供一種系統。該系統包括複數個工作者節點及與該複數個工作者節點電子通信之一主節點。該等工作者節點之各者包含運行一工作者工作管理員之至少一個CPU及與該CPU電子通信之至少一個GPU。該工作者工作管理員經組態以將一接收之工作劃分為複數個任務。該等工作者工作管理員之各者經組態以將該接收之工作之該等任務之各者指派至該工作者節點中之該CPU之一者或該GPU之一者。該等工作者工作管理員之各者經組態以判定是否指派該等任務之一者至該工作者節點中之該CPU之一者而非該GPU之一者或是否指派該等任務之一者至該工作者節點中之該GPU之一者而非該CPU之一者。該主節點接收關於一半導體晶圓或倍縮光罩之輸入影像資料。該主節點經組態以將該輸入影像資料劃分為至少一第一工作且將該第一工作分佈至該等工作者節點之一者。該等工作者工作管理員之各者進一步經組態以使該第一工作中之該等任務優先於一稍後工作中之任務。
該等工作者節點之一者中之該CPU可多於該GPU,或該等工作者節點之一者中之該GPU可多於該CPU。
該主節點可經進一步組態以將該輸入影像資料劃分為一第二工作且將該第二工作分佈至該等工作者節點之一者。
該系統可包含該等工作者節點之一者中之與運行該工作者工作管理員之該CPU電子通信之另一CPU。
該系統可包含與該主節點電子通信之至少一個CPU工作者節點。該CPU工作者節點可包含該CPU之一或多者而無該GPU之任一者。該CPU工作者節點中之該CPU之一者可運行該工作者工作管理員。
該系統可包含與該主節點電子通信之至少一個GPU工作者節點。該GPU工作者節點可包含該GPU之一或多者而無除運行該工作者工作管理員之CPU外之該CPU之任一者。
該系統可包含一介面層,其經組態以使用一應用程式設計介面來與一整合式記憶體控制器(IMC)用戶端通信。
該等工作者工作管理員之各者可包含具有一深度學習模型之一模組。該深度學習模型可經組態以將該接收之工作中之該等任務之各者指派至該工作者節點中之該CPU之一者或該GPU之一者。
該系統可包含與該GPU電子通信之一類神經網路。
該主節點可與一處理工具電子通信。該處理工具包含一半導體檢查工具或一半導體計量工具。
在一第二實施例中提供一種方法。在一主節點處從一半導體檢查工具或一半導體計量工具接收輸入影像資料。該輸入影像資料係關於一半導體晶圓或倍縮光罩。使用該主節點將該輸入影像資料劃分為至少一第一工作。使用該主節點來將該第一工作分佈至與該主節點電子通信之複數個工作者節點之一第一工作者節點。該等工作者節點之各者包含運行一工作者工作管理員之至少一個CPU及與該CPU電子通信之至少一個GPU。該工作者工作管理員經組態以將一接收之工作劃分為複數個任務。使用該第一工作者節點中之該工作者工作管理員來將該第一工作劃分為複數個任務。使用該第一工作者節點中之該工作者工作管理員來將該第一工作中之該等任務之各者指派至該第一工作者節點中之該CPU之一者或該GPU之一者。使用該第一工作者節點中之該工作者工作管理員使該第一工作中之該等任務優先於一稍後工作中之任務。
在一例項中,可使用該主節點將該輸入影像資料劃分為一第二工作。可使用該主節點將該第二工作分佈至該複數個工作者節點之一第二工作者節點。可使用該第二工作者節點中之該工作者工作管理員來將該第二工作劃分為複數個任務。可使用該第二工作者節點中之該工作者工作管理員來將該第二工作中之該等任務之各者指派至該第二工作者節點中之該CPU之一者或該GPU之一者。
該等工作者工作管理員之各者可包含具有一深度學習模型之一模組。該深度學習模型可經組態以將一接收之工作中之該等任務之各者指派至該工作者節點中之該CPU之一者或該GPU之一者。該方法可進一步包含再訓練該深度學習模型。
該等工作者工作管理員可在一先進先出工作佇列下操作。
該工作者工作管理員可經組態以將一接收之工作中之該等任務之各者指派至該工作者節點中之該CPU之一者或該GPU之一者,其中該工作者工作管理員指派該等任務以最小化該等任務之完成時間。
該輸入影像資料可按等批次分佈至該等GPU。
該輸入影像資料可來自多個晶圓位置。可在同一批次中處理該輸入影像資料。
該第一工作可平行且即時分佈至該第一工作者節點。當在記憶體中獲得該輸入影像資料時,該第一工作可經分佈至該第一工作者節點。
相關申請案之交叉參考 此申請案主張2017年5月23日申請且指派為美國申請案第62/509,927號之臨時專利申請案的優先權,該案之揭示內容係以引用的方式併入本文中。
儘管將依據特定實施例描述所主張之標的,然其他實施例(包含未提供本文中闡述之全部優點及特徵之實施例)亦在本發明之範疇內。可在不脫離本發明之範疇之情況下進行各種結構、邏輯、程序步驟及電子改變。因此,僅參考隨附申請專利範圍定義本發明之範疇。
本文中揭示之實施例包含用於高頻寬、混合處理器計算系統之即時工作分佈軟體架構,其等可配合半導體檢查及計量使用。架構係可擴展的,且可調整CPU及GPU之數量以滿足對滿足成本及系統處理量所需之任何計算頻寬的計算需要。因此,架構可供應任何半導體檢查或計量工具或產品平台。在一些實施例中,GPU分批可在調度至GPU之前將多個任務分組,以用於依最小延時進行有效資料傳送及有效利用GPU核心。
本文中揭示之實施例可使用一彈性架構。架構可支援CPU或GPU上之任何類型的計算,包含由待在CPU上運行之習知演算法隔開的任何數量個GPU捆綁任務類型。可在CPU或GPU上執行所有種類之任務類型。因此,對於旨在建立一混合(CPU/GPU)解決方案之多數檢查及計量工具,可調適且客製化架構。一即時分佈架構可依最小工作調度延時跨多個節點平行且即時(例如,當在記憶體中獲得影像時)分佈工作至多個處理器(例如,CPU或GPU)。
此架構之實施例容許CPU-GPU工作負載在一節點內或跨節點自然混合(例如,CPU任務至GPU任務至CPU任務)。其亦可針對每節點之非偶數個CPU或GPU提供具有有效處理之能力。因此,每節點之CPU數量可大於或小於每節點之GPU數量。
圖1係一系統架構100之一實施例之一方塊圖。系統100包含一主節點101及多個工作者節點102。主節點101及工作者節點102可諸如使用一高速Infiniband (無線頻帶)網路連接,以具有依諸如56 Gbps之一速度之雙向通信。
在一例項中,主節點101包含兩個Intel x64處理器晶片。例如,可使用每晶片具有14個CPU核心之Broadwell晶片。在此實例中,主節點101包含256 GB之RAM。
系統架構100可包含1個與72個之間的工作者節點102,包含其等之間的任何值或範圍。在一特定實施例中,系統架構100包含2個與40個之間的工作者節點102。在又一特定實施例中,系統架構包含18個工作者節點102。
工作者節點102之各者包含至少一個CPU 103及與CPU 103電子通信之至少一個GPU 104。在一例項中,一工作者節點102包含兩個Intel x64處理器晶片。例如,可使用每晶片具有10個CPU核心之Broadwell晶片。在此實例中,工作者節點102包含256 GB之RAM。
各工作者節點102中之CPU 103之一者可運行一工作者工作管理員105,諸如一GPU工作管理員。可在工作者節點102中之一單獨CPU上運行工作者工作管理員105。例如,工作者節點102可包含20個CPU,其等之一者運行工作者工作管理員105。
工作者工作管理員105可經組態以將一接收之工作(一資料碎片)劃分為由CPU 103或GPU 104處理之複數個任務。接收之工作可在本端儲存於工作者節點102。基於邏輯影像處理邊界,一工作由多個任務構成。此邏輯分離之一些係基於使用一CPU或GPU來劃分任務。
工作者工作管理員105亦可將一接收之工作劃分為多個工作。此係一資料平行性之一形式。
在一例項中,一或多個工作者節點102包含用於運行工作者工作管理員105之一CPU 103,其與該工作者節點102中之另一CPU 103電子通信。
工作者工作管理員105之各者可經組態以將接收之工作之任務之各者指派至工作者節點102中之CPU 103之一者或GPU 104之一者。工作者工作管理員105可處於與指派任務之各者之CPU 103或GPU 104相同之工作者節點102中。
工作者工作管理員105之各者可經組態以判定是否指派任務之一者至工作者節點102中之CPU 130之一者而非GPU 104之一者或是否指派任務之一者至工作者節點102中之GPU 104之一者而非CPU 103之一者。在一例項中,與一工作相關聯之任務之各者具有控制其操作之組態細節。此等組態細節之一者可為其執行之處理器類型,其可命令使用一CPU 103或GPU 104來執行其操作。
工作者工作管理員105接著可調度對應於多個工作之多個CPU捆綁任務(例如,任務0、2或4)至CPU捆綁演算法程序,且調度對應於多個工作之多個GPU捆綁任務(例如,任務1或3)至GPU捆綁演算法程序或一GPU工作管理員程序(未繪示)。例如,工作索引T至(T+P-1)之任務0將經調度至P個CPU捆綁演算法程序而一些工作索引 (T-1)之任務1或3當前正由一GPU工作管理員程序處理。一給定工作之所有任務可以一循序順序在CPU與GPU之間跳躍而執行,其中一個任務之輸出作為輸入饋送至下一任務。例如,(如在圖1中展示),n個工作之任一者之任務序列將為任務0 (CPU)、任務1 (GPU)、任務2 (CPU)、任務3 (GPU)及任務4 (CPU)。然而,來自工作X之任務並不取決於來自工作Y之任務。因此,來自工作X及Y之任務可平行執行,只要CPU及/或GPU可用於處理。
GPU工作管理員可藉由針對各類型之基於GPU之任務執行具有單獨工作佇列而具有一內部、平行工作流執行機構。在一例項中,存在「偵測」及「分類」類型GPU工作,且GPU工作管理員含有服務該等工作佇列之多個CPU執行緒(內部),及處理自GPU處理器輸出之結果之一單獨CPU執行緒。
經調度至一GPU工作管理員程序之GPU捆綁任務可經排列於GPU工作管理員程序之輸入佇列中以容許在調度至GPU之前分批輸入資料以具有更高之CPU至GPU資料傳送效率。輸入資料可為輸入影像資料。
所揭示之架構係足夠彈性的以支援任何類型之GPU捆綁任務。可針對此架構之一實施例產生一計算模型。可在添加或移除工作者節點或添加或移除每節點之GPU而更新計算模型。
系統架構100具有用於檢查晶圓之各種操作模式。可基於將針對各工作處於行動中之獨有任務組針對各操作模式設計計算模型。計算模型可具有一任務清單及基於影像輸入條件之各任務之計算時間。計算模型可結算所有任務之總處理時間。基於此時間,可判定CPU及GPU處理器之數量以及節點之總數以滿足所需輸入影像率。
輸入資料可使用(例如)高速InfiniBand鏈路跨節點傳送。
此架構之其他實施例係可能的。例如,僅一些工作者節點含有CPU及GPU兩者且剩餘工作者節點僅含有CPU。在另一實例中,針對CPU捆綁及GPU捆綁任務存在專用工作者節點。
此架構之實施例可在CPU與GPU之間往返時支援多個任務類型。GPU工作管理員資料流在圖3中展示且展示資料如何流動通過在一單一節點內之單一主機CPU及多個GPU上運行之GPU工作管理員軟體堆疊。在圖5中展示之GPU工作管理員架構繪示實施例之彈性及可擴展性。
主節點101係與工作者節點102電子通信。主節點101可接收關於一半導體晶圓或倍縮光罩之輸入資料,諸如輸入影像資料。主節點101可經組態以將輸入資料劃分為至少一第一工作,且將第一工作分佈至工作者節點102中之一者。在主節點101上運行之一主工作管理員可將輸入資料劃分(碎片化)為工作(資料碎片)。使用主節點101中之主工作管理員將各工作發送至工作者節點102之一者。
各工作可對應於晶圓上之一位點,且可具有與之相關之一位點索引。當將輸入資料劃分為工作時,主節點工作管理員可將工作調度至工作者節點,以最大化跨整個影像電腦系統之負載平衡。此可確保與一位點/工作相關聯之所有任務發送至一單一工作者節點,此最小化處理一單一位點工作之工作者節點之間的任何交叉訊務。
在包裹之架構中,輸入資料將在無主節點101之情況下直接由工作者節點102劃分以避免資料傳送延時。
主節點101可係與一處理工具(諸如一半導體檢查或半導體計量工具)進行電子通信。例如,主節點101可係與一掃描電子顯微鏡(SEM)、光學顯微鏡、寬頻電漿(BBP)工具或其他半導體檢查或計量工具進行電子通信。
工作者工作管理員105之各者可進一步經組態以使第一工作中之任務優先於一稍後工作中的任務。
主節點101可經進一步組態以將輸入資料劃分為一第二工作,且將第二工作分佈至工作者節點102中之一者。此可為接收第一工作之相同工作者節點102或一不同工作者節點102。
各工作者節點102之組成可變化。一工作者節點102中之CPU 103可多於GPU 104,一工作者節點中之CPU 103之數量可等於GPU 104之數量,或一工作者節點102中之GPU 104可多於CPU 103。雖然在圖1中繪示為具有相同組成,但一或多個工作者節點102可具有CPU 103及GPU 104之一不同組成。在一例項中,工作者節點102之各者可具有CPU 103及GPU 104之一不同組成。
在一例項中,在一工作者節點102中可存在20或20以上個CPU及從1至4個GPU。一般言之,一工作者節點102中之CPU可多於GPU,不過其他組態係可能的。
系統100可包含與主節點101電子通信之至少一個CPU工作者節點。CPU工作者節點包含一或多個CPU,其等之一者運行一工作者工作管理員105。CPU工作者節點不包含GPU。
系統100可包含與主節點101電子通信之至少一個GPU工作者節點。GPU工作者節點包含一或多個GPU。GPU工作者節點不包含CPU或僅包含運行一工作者工作管理員105之CPU。
系統100可包含一介面層,其可經組態以使用一應用程式設計介面來與一IMC用戶端通信。
在一實施例中,工作者工作管理員105之各者包含具有一深度學習模型之一模組。深度學習模型可經組態以將接收之工作中之任務之各者指派至工作者節點102中之CPU 103之一者或GPU 104之一者。深度學習模型指派一任務至一CPU 103或GPU 104可為組態檔案中之一預定設定。
針對一給定檢查操作模式,將存在對應深度學習模型或模型。模型或模型組可基於該任務組態載入至各工作者節點之CPU或GPU上。在一例項中,在GPU而非CPU上執行深度學習模型。
在一實施例中,一類神經網路與GPU 104電子通信。例如,類神經網路可經部署於GPU 104或一CPU上以針對對應影像處理任務執行深度學習模型。
使用本文中揭示之實施例,可執行GPU捆綁任務類型。可使用一薄封套或介面層,其使用各種應用程式介面與IMC用戶端軟體通信。此封套可初始化一給定任務類型,提供影像及演算法參數作為執行之輸入,且輸出來自執行之結果。可使用一輸入先進先出(FIFO)佇列。針對各網路,可產生一輸入FIFO佇列以緩衝輸入資料,使得資料始終可用於饋送至一或多個GPU以便以批次模式執行一特定任務類型。資料可使用影像電腦用戶端執行緒進入輸入資料佇列中且藉由一處理執行緒離開佇列(在輸入佇列上中斷),其進一步傳送資料至一或多個GPU以用於執行。IMC用戶端執行緒可在作用中且可在GPU忙於處理當前資料時保持使未來資料進入佇列。IMC執行緒可保持活動,儘管處理執行緒中斷且等待GPU完成處理。在由GPU完成處理之後,任務結果可藉由處理執行緒進入一輸出FIFO佇列。結果執行緒(其在輸出FIFO佇列上中斷)可使輸出資料離開佇列且複製影像電腦共用記憶體中之輸出。
本文中揭示之架構之實施例可使新的GPU捆綁任務類型之添加能夠按最小實施花費執行。可依僅執行任務類型1或在相同工作內執行任務類型1及任務類型2兩者之一選項執行兩個GPU捆綁任務類型。如在圖4中展示,可執行添加用於在一或多個GPU上執行之新的GPU捆綁任務類型,圖4係經由資料平行性展示可擴展性之圖。針對添加至GPU工作管理員之任何新的任務類型,架構可包含:一封套,其用於與一IMC用戶端介接以初始化資料且使資料進入佇列;一輸入資料FIFO佇列;一處理執行緒,其用於GPU執行;一輸出結果FIFO佇列;及一結果執行緒,其用於將結果公佈至IMC用戶端。
圖4展示對應於本文中揭示之模組之框。任務類型1在左側上且任務類型2之所有框在右側上。針對最大效能效率及負載平衡,架構在釘紮類神經網之各者中係彈性的以分離GPU或使用資料平行性針對一單一類神經網使用所有GPU。架構可將一或多個CPU分配至一指定定GPU清單以在饋送輸入資料至GPU時防止CPU變為一瓶頸。
在一例項中,一使用者指定用於一給定類神經網路之GPU清單且架構可自動將輸入資料劃分於相等批次中且調度該等批次至清單中指定之所有GPU。此在圖5中可見。因此,可按比例調整使用資料平行性之GPU數量。
本文中揭示之實施例可容許在相同批次中處理來自多個晶圓位點或位置之輸入影像資料以充分利用GPU。
可使用本文中揭示之架構之實施例來執行CPU-GPU工作負載或任務之一混合物。此混合架構可(例如)運行一CPU任務、一GPU任務及一CPU任務之一序列。此可對每節點之非偶數個CPU或GPU提供有效處理。例如,CPU之數量可大於或小於一節點中之GPU數量,且資料處理時間不受影響。
可平行且即時分佈工作。因此,當在記憶體中獲取影像時,工作可依最小工作調度延時跨多個節點分佈至多個處理器(例如,CPU或GPU)。
輸入/輸出中間資料可經讀取或寫入至磁碟而非將資料保留在記憶體中。此可歸因於磁碟輸入/輸出而影響效率,但可提供可接受之處理效能。
在一實施例中,存在用於CPU處理之至少一個專用節點及/或用於GPU處理之至少一個專用節點。混合處理跨節點發生而非在一給定節點內進行混合處理。因此,一GPU捆綁任務經調度至一專用GPU節點且一CPU捆綁任務經調度至專用CPU節點。在一例項中,所有GPU捆綁任務經調度至一專用GPU節點且所有CPU捆綁任務經調度至專用CPU節點。一內部通信網路(例如,InfiniBand)可用於資料傳送。
可藉由本文中揭示之架構實施例啟用半導體晶圓之基於深度學習檢查及計量系統。因此,本文中揭示之實施例可用於檢查及計量系統中。
圖2係GPU工作管理員架構之一實施例之一圖。圖2描述可如何使用多個GPU處理器在一單一工作管理基礎架構內執行多個類型之基於GPU任務。
圖3係用於執行多個GPU任務之GPU工作管理員架構之一實施例之另一圖。圖3展示對GPU工作管理員之各種軟體介面,其中內部工作調度及結果處理佇列用以處理一工作中之各種類型之基於GPU任務。
圖6係一GPU工作管理員軟體堆疊之一圖。軟體堆疊可為使用工作者工作管理員有效管理工作流之一分層架構。
圖7係一方法200之一流程圖。方法200實現用於高頻寬、混合處理器、計算系統(諸如用於半導體檢查及計量之該等系統)之一即時工作分佈軟體架構。方法200可為可擴展且彈性的,且可使用GPU分批。
在方法200中,在201在一主節點接收輸入資料,諸如輸入影像資料。輸入資料可來自一半導體檢查工具或一半導體計量工具。在一例項中,輸入資料係關於一半導體晶圓或倍縮光罩。輸入資料係來自一光學攝像機或一電子束掃描系統。此等源之各者可包含來自對應影像感測器之資料之多個通道。
在202,使用主節點將輸入資料劃分為至少一第一工作。
在203使用主節點來將第一工作分佈至與主節點電子通信之複數個工作者節點之一第一工作者節點。工作者節點之各者包含運行一工作者工作管理員之至少一個CPU及與該CPU電子通信之至少一個GPU。工作者工作管理員經組態以將一接收之工作劃分為複數個任務。
在204使用第一工作者節點中之工作者工作管理員來將第一工作劃分為複數個任務。
在205,使用第一工作者節點中之工作者工作管理員將第一工作中之任務之各者指派至第一工作者節點中之CPU之一者或GPU之一者。
在206,使用第一工作者節點中之工作者工作管理員使第一工作中之任務優先於一稍後工作中之任務。
在一例項中,使用主節點將輸入資料劃分為一第二工作。使用主節點將第二工作分佈至複數個工作者節點之一第二工作者節點。使用第二工作者節點中之工作者工作管理員來將第二工作劃分為複數個任務。使用第二工作者節點中之工作者工作管理員將第二工作中之任務之各者指派至第二工作者節點中之CPU之一者或GPU之一者。
工作者工作管理員之各者可包含具有一深度學習模型之一模組。深度學習模型經組態以將一接收之工作中之任務之各者指派至工作者節點中之CPU之一者或GPU之一者。若存在一深度學習模型,則方法100可包含再訓練深度學習模型。深度學習模型可為一類神經網路,其經組態以處理影像以用於特徵偵測及分類。可自一訓練操作獲得深度學習模型。在訓練期間,呈現來自晶圓或倍縮光罩之一大組輸入影像資料至具有該組中之各影像之期望輸出結果之類神經網路。可使用一深度學習軟體應用來完成一訓練操作,且此訓練之結果為該模型,其可接著用於在任何輸入影像組上產生期望輸出。
工作者工作管理員可在一先進先出工作佇列下操作。
工作者工作管理員可經組態以將一接收之工作中之任務之各者指派至工作者節點中之CPU之一者或GPU之一者,其中工作者工作管理員指派任務以最小化任務之完成時間。
輸入資料可按等批次分佈至GPU。
輸入資料可來自多個晶圓位置,且其中在一相同批次中處理輸入資料。
第一工作可平行且即時分佈至第一工作者節點。因此,當在記憶體中獲得輸入資料時,第一工作可經分佈至第一工作者節點。
一額外實施例係關於一種非暫時性電腦可讀媒體,其儲存可在一控制器上執行以用於如本文中揭示之工作分佈之程式指令。特定言之,一主節點或工作者節點可經耦合至具有包含可執行程式指令之非暫時性電腦可讀媒體之一電子資料儲存媒體中之一記憶體。電腦實施方法可包含本文中描述之任何(若干)方法之任何(若干)步驟。例如,主節點、工作者節點或系統之其他部分可經程式化以執行圖7之一些或所有步驟。電子資料儲存媒體中之記憶體可為一儲存媒體,諸如一磁碟或光碟、一磁帶或技術中已知的任何其他適當非暫時性電腦可讀媒體。
程式指令可以各種方式之任一者實施,尤其包含基於程序之技術、基於組件之技術及/或物件導向技術。例如,可視需要使用ActiveX控制項、C++物件、JavaBeans、微軟基礎類別(MFC)、串流SIMD擴展(SSE)或其他技術或方法實施程式指令。
如本文中使用,術語「晶圓」一般係指由一半導體或非半導體材料形成之基板。此一半導體或非半導體材料之實例包含(但不限於)單晶矽、砷化鎵及磷化銦。此等基板普遍可在半導體製造設備中找到及/或處理。
一晶圓可包含在一基板上形成之一或多個層。例如,此等層可包含(但不限於)一抗蝕劑、一介電材料、及一導電材料。許多不同類型之此等層在技術中已知,且如本文中使用之術語晶圓意在涵蓋包含所有類型之此等層之一晶圓。
形成於一晶圓上之一或多個層可經圖案化或未圖案化。舉例而言,一晶圓可包含複數個晶粒,各具有可重複圖案化特徵。此等材料層之形成及處理可最終導致完成裝置。許多不同類型之裝置(諸如IC)可形成於一晶圓上,且如本文中使用之術語晶圓意在涵蓋其上製造技術中已知之任何類型裝置之一晶圓。如本文中使用,術語「晶片」可包括針對一特定目的設計之IC之一集合。
雖然本文中相對於晶圓描述實施例,但應瞭解,該等實施例可用於另一樣品(諸如一倍縮光罩,其通常亦可被稱為一遮罩或一光罩)。在此項技術中已知許多不同類型的倍縮光罩,且如本文中所使用之術語「倍縮光罩」、「遮罩」及「光罩」意欲涵蓋此項技術中已知的所有類型之倍縮光罩。
可如本文中描述般執行方法之步驟之各者。方法亦可包含可藉由本文中描述之處理器及/或(若干)電腦子系統或(若干)系統執行之任何其他(若干)步驟。可藉由一或多個電腦系統執行步驟,該一或多個電腦系統可根據本文中描述之實施例之任一者組態。另外,可藉由本文中描述之系統實施例之任一者執行上文描述之方法。
儘管已參考一或多個特定實施例描述本發明,但將理解,可在不脫離本發明之範疇的情況下製作本發明之其他實施例。因此,本發明視為僅受隨附申請專利範圍及其合理解釋限制。
100‧‧‧系統架構
101‧‧‧主節點
102‧‧‧工作者節點
103‧‧‧CPU
104‧‧‧GPU
105‧‧‧工作者工作管理員
200‧‧‧方法
201‧‧‧步驟
202‧‧‧步驟
203‧‧‧步驟
204‧‧‧步驟
205‧‧‧步驟
206‧‧‧步驟
為更完全理解本發明之性質及目的,應參考結合附圖進行之以下實施方式,其中: 圖1A及圖1B展示根據本發明之一系統架構之一實施例之方塊圖,其中圖1B之工作者節點可配合圖1A中之工作者節點0、1、(K-1)之各者使用; 圖2係根據本發明之GPU工作管理員架構之一實施例之一圖; 圖3係根據本發明之用於執行多個GPU任務之GPU工作管理員架構之一實施例之一細節圖; 圖4係經由資料平行性展示可擴展性之圖; 圖5係根據本發明之一混合影像電腦(IMC)軟體架構之一實施例之一圖; 圖6係根據本發明之一GPU工作管理員之演算法程序軟體堆疊之一圖;及 圖7係根據本發明之一方法之一流程圖。

Claims (20)

  1. 一種系統,其包括: 複數個工作者節點,其中該等工作者節點之各者包含: 至少一個CPU,其運行一工作者工作管理員,其中該工作者工作管理員經組態以將一接收之工作劃分為複數個任務;及 至少一個GPU,其與該CPU電子通信; 其中該等工作者工作管理員之各者經組態以將該接收之工作之該等任務之各者指派至該工作者節點中之該CPU中之一者或該GPU中之一者; 其中該等工作者工作管理員之各者經組態以判定是否指派該等任務中之一者至該工作者節點中之該CPU中之一者而非該GPU中之一者,或是否指派該等任務中之一者至該工作者節點中之該GPU中之一者而非該CPU中之一者;及 一主節點,其與該複數個該等工作者節點電子通信,其中該主節點接收關於一半導體晶圓或倍縮光罩之輸入影像資料,且其中該主節點經組態以: 將該輸入影像資料劃分為至少一第一工作;及 將該第一工作分佈至該等工作者節點中之一者;及 其中該等工作者工作管理員之各者進一步經組態以使該第一工作中之該等任務優先於一稍後工作中之任務。
  2. 如請求項1之系統,其中該等工作者節點中之一者中之該CPU多於該GPU。
  3. 如請求項1之系統,其中該等工作者節點中之一者中之該GPU多於該CPU。
  4. 如請求項1之系統,其中該主節點經進一步組態以將該輸入影像資料劃分為一第二工作,且將該第二工作分佈至該等工作者節點中之一者。
  5. 如請求項1之系統,進一步包括該等工作者節點中之一者中之與運行該工作者工作管理員之該CPU電子通信的另一CPU。
  6. 如請求項1之系統,進一步包括與該主節點電子通信之至少一個CPU工作者節點,其中該CPU工作者節點包含不具有該GPU中之任一者之該CPU中之一或多者,且其中該CPU工作者節點中之該CPU中之一者運行該工作者工作管理員。
  7. 如請求項1之系統,進一步包括與該主節點電子通信之至少一個GPU工作者節點,其中該GPU工作者節點包含不具有除運行該工作者工作管理員之CPU外之該CPU中之任一者之該GPU中之一或多者。
  8. 如請求項1之系統,進一步包括經組態以使用一應用程式設計介面來與一IMC用戶端通信之一介面層。
  9. 如請求項1之系統,其中該等工作者工作管理員之各者包含具有一深度學習模型之一模組,其中該深度學習模型經組態以將該接收之工作中之該等任務之各者指派至該工作者節點中之該CPU中之一者或該GPU中之一者。
  10. 如請求項1之系統,進一步包括與該GPU電子通信之一類神經網路。
  11. 如請求項1之系統,其中該主節點與一處理工具電子通信,其中該處理工具包含一半導體檢查工具或一半導體計量工具。
  12. 一種方法,其包括: 在一主節點處,從一半導體檢查工具或一半導體計量工具接收輸入影像資料,其中該輸入影像資料係關於一半導體晶圓或倍縮光罩; 使用該主節點將該輸入影像資料劃分為至少一第一工作; 使用該主節點來將該第一工作分佈至與該主節點電子通信之複數個工作者節點中之一第一工作者節點,其中該等工作者節點中之各者包含: 至少一個CPU,其運行一工作者工作管理員,其中該工作者工作管理員經組態以將一接收之工作劃分為複數個任務;及 至少一個GPU,其與該CPU電子通信; 使用該第一工作者節點中之該工作者工作管理員來將該第一工作劃分為複數個任務; 使用該第一工作者節點中之該工作者工作管理員來將該第一工作中之該等任務之各者指派至該第一工作者節點中之該CPU中之一者或該GPU中之一者;及 使用該第一工作者節點中之該工作者工作管理員來使該第一工作中之該等任務優先於一稍後工作中之任務。
  13. 如請求項12之方法,進一步包括: 使用該主節點,將該輸入影像資料劃分為一第二工作; 使用該主節點,將該第二工作分佈至該複數個該等工作者節點之一第二工作者節點; 使用該第二工作者節點中之該工作者工作管理員來將該第二工作劃分為複數個任務;及 使用該第二工作者節點中之該工作者工作管理員來將該第二工作中之該等任務之各者指派至該第二工作者節點中之該CPU中之一者或該GPU中之一者。
  14. 如請求項12之方法,其中該等工作者工作管理員之各者包含具有一深度學習模型之一模組,其中該深度學習模型經組態以將一接收之工作中之該等任務之各者指派至該工作者節點中之該CPU中之一者或該GPU中之一者,且其中該方法進一步包括再訓練該深度學習模型。
  15. 如請求項12之方法,其中該等工作者工作管理員在一先進先出工作佇列下操作。
  16. 如請求項12之方法,其中該工作者工作管理員經組態以將一接收之工作中之該等任務之各者指派至該工作者節點中之該CPU中之一者或該GPU中之一者,其中該工作者工作管理員指派該等任務以最小化該等任務之完成時間。
  17. 如請求項12之方法,其中該輸入影像資料係按等批次分佈至該等GPU。
  18. 如請求項12之方法,其中該輸入影像資料係來自多個晶圓位置,且其中在一相同批次中處理該輸入影像資料。
  19. 如請求項12之方法,其中該第一工作經平行且即時分佈至該第一工作者節點。
  20. 如請求項19之方法,其中當在記憶體中獲得該輸入影像資料時,該第一工作被分佈至該第一工作者節點。
TW107117446A 2017-05-23 2018-05-23 用於可擴展及彈性工作分佈架構之系統及方法 TWI782023B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US201762509927P 2017-05-23 2017-05-23
US62/509,927 2017-05-23
US15/978,626 US11237872B2 (en) 2017-05-23 2018-05-14 Semiconductor inspection and metrology systems for distributing job among the CPUs or GPUs based on logical image processing boundaries
US15/978,626 2018-05-14

Publications (2)

Publication Number Publication Date
TW201907297A true TW201907297A (zh) 2019-02-16
TWI782023B TWI782023B (zh) 2022-11-01

Family

ID=64395866

Family Applications (1)

Application Number Title Priority Date Filing Date
TW107117446A TWI782023B (zh) 2017-05-23 2018-05-23 用於可擴展及彈性工作分佈架構之系統及方法

Country Status (5)

Country Link
US (1) US11237872B2 (zh)
KR (1) KR102606550B1 (zh)
CN (1) CN110612514A (zh)
TW (1) TWI782023B (zh)
WO (1) WO2018217545A1 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10888788B2 (en) * 2016-06-30 2021-01-12 Sony Interactive Entertainment Inc. Automated artificial intelligence (AI) control mode for playing specific tasks during gaming applications
CN109522101B (zh) * 2017-09-20 2023-11-14 三星电子株式会社 用于调度多个操作系统任务的方法、系统和/或装置
US10679333B2 (en) 2018-03-14 2020-06-09 Kla-Tencor Corporation Defect detection, classification, and process window control using scanning electron microscope metrology
CN111124656B (zh) * 2018-10-31 2023-09-15 伊姆西Ip控股有限责任公司 用于向专用计算资源分配任务的方法、设备和计算机可读存储介质
KR102224487B1 (ko) * 2019-05-02 2021-03-08 숭실대학교산학협력단 머신 러닝 플랫폼 관리 시스템 및 방법
JP7326969B2 (ja) * 2019-07-30 2023-08-16 富士通株式会社 情報処理装置,ストレージシステム及びスケジューリングプログラム
CN112965809A (zh) * 2019-12-12 2021-06-15 深圳市优必选科技股份有限公司 深度学习任务处理系统和方法
US11714681B2 (en) * 2020-01-23 2023-08-01 Visa International Service Association Method, system, and computer program product for dynamically assigning an inference request to a CPU or GPU
KR102405933B1 (ko) * 2020-02-27 2022-06-08 숭실대학교 산학협력단 학습에 의한 머신 러닝 실행 관리 플랫폼 시스템 및 방법
KR102266324B1 (ko) * 2020-02-28 2021-06-17 숭실대학교산학협력단 머신 러닝 실행 관리 플랫폼에서의 워커 노드 관리 방법 및 그를 위한 플랫폼 시스템
US11604989B2 (en) 2020-04-16 2023-03-14 Micron Technology, Inc. Ann training through processing power of parked vehicles
EP3992878B1 (en) * 2020-09-11 2023-08-09 Changxin Memory Technologies, Inc. Method and apparatus for processing wafer inspection task, system, and storage medium
WO2022118236A1 (en) * 2020-12-02 2022-06-09 Jet Blockchain Inc. Closely coupled hardware acceleration in a multi-processors environment
CN115202854A (zh) * 2021-04-08 2022-10-18 富泰华工业(深圳)有限公司 数据控制方法、数据处理方法及相关设备
US20230004786A1 (en) * 2021-06-30 2023-01-05 Micron Technology, Inc. Artificial neural networks on a deep learning accelerator
CN113591398B (zh) * 2021-08-23 2023-05-23 北京邮电大学 基于深度强化学习的智能作业分批方法、装置及电子设备
US12039368B2 (en) 2021-09-07 2024-07-16 Apple Inc. Priority inversion mitigation techniques
GB2624613A (en) * 2021-09-07 2024-05-22 Apple Inc Quality of service techniques in distributed graphics processor
CN114374848B (zh) * 2021-12-20 2024-03-19 杭州当虹科技股份有限公司 一种视频编码优化方法和系统
CN116819911B (zh) * 2023-08-31 2023-10-31 光科芯图(北京)科技有限公司 掩模图案的优化方法、装置、曝光设备及存储介质
CN116962176B (zh) * 2023-09-21 2024-01-23 浪潮电子信息产业股份有限公司 一种分布式集群的数据处理方法、装置、系统及存储介质

Family Cites Families (58)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7617474B2 (en) 1997-09-17 2009-11-10 Synopsys, Inc. System and method for providing defect printability analysis of photolithographic masks with job-based automation
US6614520B1 (en) 1997-12-18 2003-09-02 Kla-Tencor Corporation Method for inspecting a reticle
US6529621B1 (en) 1998-12-17 2003-03-04 Kla-Tencor Mechanisms for making and inspecting reticles
US6966047B1 (en) 2002-04-09 2005-11-15 Kla-Tencor Technologies Corporation Capturing designer intent in reticle inspection
JP4758358B2 (ja) 2004-01-29 2011-08-24 ケーエルエー−テンカー コーポレイション レチクル設計データにおける欠陥を検出するためのコンピュータに実装される方法
JP4904034B2 (ja) 2004-09-14 2012-03-28 ケーエルエー−テンカー コーポレイション レチクル・レイアウト・データを評価するための方法、システム及び搬送媒体
JP5134188B2 (ja) 2004-10-15 2013-01-30 ケーエルエー−テンカー コーポレイション 試料上の欠陥を分析する装置
US7076390B1 (en) 2004-10-18 2006-07-11 Kla-Tencor Technologies Corporation Memory load balancing
US7555409B1 (en) 2004-10-18 2009-06-30 Kla-Tencor Corporation Daisy chained topology
US8823969B1 (en) 2004-10-18 2014-09-02 Kla-Tencor Corporation Image processing architecture
US7181368B1 (en) 2004-10-18 2007-02-20 Kla-Tencor Technologies Corporation Status polling
US7602958B1 (en) 2004-10-18 2009-10-13 Kla-Tencor Corporation Mirror node process verification
US7149642B1 (en) 2004-10-18 2006-12-12 Kla-Tencor Technologies Corporation Programmable image computer
US7440640B1 (en) 2004-10-18 2008-10-21 Kla-Tencor Corporation Image data storage
US7024339B1 (en) 2004-10-18 2006-04-04 Kla-Tencor Technologies Corporation Full swath analysis
US7382940B1 (en) 2004-10-18 2008-06-03 Kla-Tencor Corporation Fast bus image coprocessing
EP1982160A4 (en) 2006-02-09 2016-02-17 Kla Tencor Tech Corp METHOD AND SYSTEMS FOR DETERMINING A WAFER FEATURE
US7691549B1 (en) 2007-02-15 2010-04-06 Kla-Tencor Technologies Corporation Multiple exposure lithography technique and method
US7796804B2 (en) 2007-07-20 2010-09-14 Kla-Tencor Corp. Methods for generating a standard reference die for use in a die to standard reference die inspection and methods for inspecting a wafer
US8126255B2 (en) 2007-09-20 2012-02-28 Kla-Tencor Corp. Systems and methods for creating persistent data for a wafer and for using persistent data for inspection-related functions
KR101803109B1 (ko) 2009-07-22 2017-11-29 케이엘에이-텐코 코포레이션 링 조명을 갖는 다크 필드 검사 시스템
US8669990B2 (en) * 2009-12-31 2014-03-11 Intel Corporation Sharing resources between a CPU and GPU
US8984519B2 (en) * 2010-11-17 2015-03-17 Nec Laboratories America, Inc. Scheduler and resource manager for coprocessor-based heterogeneous clusters
US8989478B2 (en) * 2011-07-29 2015-03-24 Kla-Tencor Corporation Method and system for visualization of semiconductor wafer inspection data acquired in a photovoltaic cell production process
US20130093776A1 (en) * 2011-10-14 2013-04-18 Microsoft Corporation Delivering a Single End User Experience to a Client from Multiple Servers
US9222771B2 (en) 2011-10-17 2015-12-29 Kla-Tencor Corp. Acquisition of information for a construction site
KR101850027B1 (ko) * 2011-12-08 2018-04-24 한국전자통신연구원 실시간 3차원 실 환경 복원장치 및 그 방법
US8754972B2 (en) 2012-02-01 2014-06-17 Kla-Tencor Corporation Integrated multi-channel analog front end and digitizer for high speed imaging applications
US8887056B2 (en) 2012-08-07 2014-11-11 Advanced Micro Devices, Inc. System and method for configuring cloud computing systems
US9576861B2 (en) 2012-11-20 2017-02-21 Kla-Tencor Corporation Method and system for universal target based inspection and metrology
US9222895B2 (en) 2013-02-25 2015-12-29 Kla-Tencor Corp. Generalized virtual inspector
EP3242210B1 (en) * 2013-03-15 2022-08-03 INTEL Corporation Work stealing in heterogeneous computing systems
GB201306036D0 (en) * 2013-04-03 2013-05-22 King Com Ltd Automatic generation of api classes
US9355208B2 (en) 2013-07-08 2016-05-31 Kla-Tencor Corp. Detecting defects on a wafer
US10127652B2 (en) * 2014-02-06 2018-11-13 Kla-Tencor Corp. Defect detection and classification based on attributes determined from a standard reference image
US10579435B2 (en) * 2014-02-28 2020-03-03 Pivotal Software, Inc. Executing a foreign program on a parallel computing system
JP2015184023A (ja) * 2014-03-20 2015-10-22 株式会社東芝 欠陥検査方法
US9262821B2 (en) 2014-05-12 2016-02-16 Kla-Tencor Corp. Inspection recipe setup from reference image variation
US10747830B2 (en) 2014-11-21 2020-08-18 Mesh Labs Inc. Method and system for displaying electronic information
CN104536937B (zh) * 2014-12-30 2017-10-31 深圳先进技术研究院 基于cpu‑gpu异构集群的大数据一体机实现方法
KR102354992B1 (ko) * 2015-03-02 2022-01-24 삼성전자주식회사 양안 시차 영상에 대한 타일 기반 렌더링 방법 및 장치
WO2017049496A1 (en) 2015-09-23 2017-03-30 Intel Corporation Apparatus and method for local quantization for convolutional neural networks (cnns)
US10360063B2 (en) * 2015-09-23 2019-07-23 Qualcomm Incorporated Proactive resource management for parallel work-stealing processing systems
US10186026B2 (en) 2015-11-17 2019-01-22 Kla-Tencor Corp. Single image detection
US9965901B2 (en) 2015-11-19 2018-05-08 KLA—Tencor Corp. Generating simulated images from design information
US11580375B2 (en) 2015-12-31 2023-02-14 Kla-Tencor Corp. Accelerated training of a machine learning based model for semiconductor applications
US9916965B2 (en) 2015-12-31 2018-03-13 Kla-Tencor Corp. Hybrid inspectors
US10648924B2 (en) 2016-01-04 2020-05-12 Kla-Tencor Corp. Generating high resolution images from low resolution images for semiconductor applications
CN105677486B (zh) * 2016-01-08 2019-03-22 上海交通大学 数据并行处理方法及系统
US10043261B2 (en) 2016-01-11 2018-08-07 Kla-Tencor Corp. Generating simulated output for a specimen
US10181185B2 (en) 2016-01-11 2019-01-15 Kla-Tencor Corp. Image based specimen process control
US10360477B2 (en) 2016-01-11 2019-07-23 Kla-Tencor Corp. Accelerating semiconductor-related computations using learning based models
US10277911B2 (en) * 2016-01-22 2019-04-30 Wowza Media Systems, LLC Video processing workload management
KR102168003B1 (ko) * 2016-05-20 2020-10-20 구글 엘엘씨 오브젝트(들)를 캡처하는 이미지(들)에 기초하는 그리고 환경에서의 미래 로봇 움직임에 대한 파라미터(들)에 기초하여 로봇 환경에서의 오브젝트(들)의 모션(들)을 예측하는 것과 관련된 머신 학습 방법들 및 장치
US10395356B2 (en) 2016-05-25 2019-08-27 Kla-Tencor Corp. Generating simulated images from input images for semiconductor applications
US10346740B2 (en) 2016-06-01 2019-07-09 Kla-Tencor Corp. Systems and methods incorporating a neural network and a forward physical model for semiconductor applications
US10195531B2 (en) * 2016-06-30 2019-02-05 Sony Interactive Entertainment Inc. Automated artificial intelligence (AI) personal assistant
US11580398B2 (en) 2016-10-14 2023-02-14 KLA-Tenor Corp. Diagnostic systems and methods for deep learning models configured for semiconductor applications

Also Published As

Publication number Publication date
KR102606550B1 (ko) 2023-11-24
US11237872B2 (en) 2022-02-01
US20180341525A1 (en) 2018-11-29
TWI782023B (zh) 2022-11-01
KR20200000451A (ko) 2020-01-02
CN110612514A (zh) 2019-12-24
WO2018217545A1 (en) 2018-11-29

Similar Documents

Publication Publication Date Title
TWI782023B (zh) 用於可擴展及彈性工作分佈架構之系統及方法
US12106154B2 (en) Serverless computing architecture for artificial intelligence workloads on edge for dynamic reconfiguration of workloads and enhanced resource utilization
US6763277B1 (en) Method and apparatus for proactive dispatch system to improve line balancing
US7257459B1 (en) Method and apparatus for scheduling pilot lots
US10204290B2 (en) Defect review sampling and normalization based on defect and design attributes
TWI416315B (zh) 用於測試及組配功能性構件之積體電路、系統、方法、協調裝置與電腦可用儲存媒體
KR20140027077A (ko) 그래픽 연산 처리 스케줄링
KR20140001972A (ko) 그래픽 처리 연산 자원의 액세스 가능성
US20230136661A1 (en) Task scheduling for machine-learning workloads
KR20140004669A (ko) 유저 모드로부터 그래픽 처리 디스패치
US7283885B2 (en) Electron beam lithography system, method of electron beam lithography, program and method for manufacturing a semiconductor device with direct writing
US10522427B2 (en) Techniques providing semiconductor wafer grouping in a feed forward process
US20210365804A1 (en) Dynamic ai model transfer reconfiguration to minimize performance, accuracy and latency disruptions
JP2005190031A (ja) 半導体デバイス製造におけるボトルネック発生回避方法およびシステム
TWI584401B (zh) 光刻設備及物品的製造方法
US9081306B2 (en) Method of optimizing lithography tools utilization
US8516145B2 (en) Information processing method and information processing apparatus for transmitting data generated by device manufacturing apparatus
US8355560B2 (en) Pattern evaluation system, pattern evaluation method and semiconductor device manufacturing method
JP6320457B2 (ja) 基板処理装置、基板処理方法、プログラム、及び物品製造方法
US20230393893A1 (en) System and method for distributed processing of large-scale streaming data
US20240111578A1 (en) Hierarchical work scheduling
CN111771257B (zh) 基板处理装置和判定方法
US7289860B1 (en) Method and apparatus for reserving a processing tool in a semiconductor fabrication facility
KR20240126411A (ko) 실현 불가능한 작업들을 갖는 작업 스케줄링
TW464942B (en) Lots dispatching method for variably arranging processing equipment and/or processing conditions in a succeeding process according to the results of a preceding process and apparatus for the same