94、利用多線程優化卷積運算

上一節簡單介紹了多線程的概念,同時也介紹了在使用多線程編程時,對于數據在線程間的切分,應該遵循的一個原則:那就是切分獨立的數據快,而不切分有數據依賴的數據塊。

最后還拋出了一個問題:對于卷積算法而言,你覺的切分哪個維度最合適呢?

卷積的切分

之前花了很多篇幅來介紹卷積算法,可以返回這里的前后文章來復習一下卷積算法。

總的來說,卷積運算的核心是乘累加運算。這里所謂的乘累加運算,就是將卷積核 [kh, kw] 范圍內的數據與對應的 [hi, wi] 范圍的數據在 ci 方向對應位置相乘,然后再累加成一個數據作為最終輸出。

因為要把這些維度的數據最終累加成一個值,因此這些維度的數據就是存在依賴的數據,因此這些維度不好拆分。

如果硬要在 kh, kw, hi, wi, ci 這些維度做拆分,那么顯而易見的是,需要將拆分到多個線程中的數據計算的結果,再進一步累加,得到一個數據作為最終輸出。

有些時候,我會把 kh, kw, hi, wi, ci 這幾個維度,稱為卷積的累加維度,或者叫做 reduce 維度。

無論是做多線程編程,還是利用 GPU 或者其他 AI 芯片做卷積的加速,亦或是做其他算法的優化加速,這些 reduce 維度的數據拆分都是很麻煩的,因此盡量不要去拆這些維度的數據。

那除了這些 reduce 維度之外,卷積運算還有 ho, wo, co 這幾個維度可以考慮。

但是,我們根據卷積的

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/719561.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/719561.shtml
英文地址,請注明出處:http://en.pswp.cn/news/719561.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

數據結構從入門到精通——鏈表

鏈表 前言一、鏈表1.1 鏈表的概念及結構1.2 鏈表的分類1.3 鏈表的實現1.4 鏈表面試題1.5 雙向鏈表的實現 二、順序表和鏈表的區別三、單項鏈表實現具體代碼text.htext.cmain.c單鏈表的打印空間的開辟鏈表的頭插、尾插鏈表的頭刪、尾刪鏈表中元素的查找鏈表在指定位置之前、之后…

LabVIEW齒輪傳動健康狀態靜電在線監測

LabVIEW齒輪傳動健康狀態靜電在線監測 隨著工業自動化的不斷發展,齒輪傳動作為最常見的機械傳動方式之一,在各種機械設備中發揮著至關重要的作用。然而,齒輪在長期運行過程中易受到磨損、變形等因素影響,進而影響整個機械系統的穩…

日常工作總結

日常工作總結 1000. JAVA基礎1. 泛型1.1 泛型和Object的區別 1100. Spring1. 常用注解1.1 ControllerAdvice注解1.2 緩存Cacheable 2. 常用方法2.1 BeanUtils.copyProperties的用法 3. 常用功能組件3.1 過濾器Filter 2000. Linux應用 1000. JAVA基礎 1. 泛型 1.1 泛型和Objec…

【爬蟲實戰】——Python爬取天氣信息

🍉CSDN小墨&曉末:https://blog.csdn.net/jd1813346972 個人介紹: 研一|統計學|干貨分享 ???????? 擅長Python、Matlab、R等主流編程軟件 ???????? 累計十余項國家級比賽獎項,參與研究經費10w、40w級橫向 文…

大模型推薦落地啦!融合知識圖譜,螞蟻集團發布!

引言:電商推薦系統的新突破 隨著電子商務平臺的蓬勃發展,推薦系統已成為幫助用戶在信息過載時代中篩選和發現產品的關鍵工具。然而,傳統的推薦系統主要依賴歷史數據和用戶反饋,這限制了它們在新商品推出和用戶意圖轉變時的有效性…

使用AspectJ進行面向切面編程(AOP)

第1章 引言 大家好,我是小黑,業務開發中,咱們經常會遇到這樣的情況:有些代碼幾乎在每個方法里都要用到,比如日志記錄、權限校驗、或者性能監測。如果每次都手動加入這些代碼,不僅效率低下,而且…

深入了解接口測試:方法、工具和關鍵考慮因素

接口測試是軟件測試中的一項重要工作,它涉及到系統與系統之間的交互點。接口可以是外部接口,也可以是內部接口,包括上層服務與下層服務接口以及同級接口。在接口測試中,我們需要確保接口能夠按照預期的方式進行通信和交互&#xf…

C++ 模擬OJ

目錄 1、1576. 替換所有的問號 2、 495. 提莫攻擊 3、6. Z 字形變換 4、38. 外觀數列 5、 1419. 數青蛙 1、1576. 替換所有的問號 思路:分情況討論 ?zs:左邊沒有元素,則僅需保證替換元素與右側不相等;z?s:左右都…

Java - List排序

List排序方法 主要有三種方法(按推薦度排序): JDK8的streamComparator#compare()Comparable#compareTo() 法1:list的sort() package com.example.a;import java.util.ArrayList; import java.util.Comparator; import java.util…

pyqt5 QWebEngineView 重寫mousepressevent捕獲鼠標點擊事件,無響應

QWebEngineView 加載網頁后,重寫mousepressevent捕獲鼠標點擊事件,無響應原因是 QWebEngineView在加載界面后,被本身的child接收了該事件, 解決辦法:同過重載event,截取QEvent::ChildAdded事件 from PyQ…

islide2024免費版PPT插件下載

一、功能概覽 iSlide PPT插件是一款專為PowerPoint用戶設計的輔助工具,其功能全面且實用,主要包括但不限于以下幾點: 設計元素庫:提供豐富的設計元素,如主題、布局、圖標、配色等,用戶可以直接拖拽使用&a…

動態規劃|【雙指針】|611.有效三角形個數

題目 611. 有效三角形的個數 給定一個包含非負整數的數組 nums ,返回其中可以組成三角形三條邊的三元組個數。 示例 1: 輸入: nums [2,2,3,4] 輸出: 3 解釋:有效的組合是: 2,3,4 (使用第一個 2) 2,3,4 (使用第二個 2) 2,2,3示例 2: 輸入: nums [4,2,3,4] 輸出…

【Python】OpenCV-使用ResNet50進行圖像分類

使用ResNet50進行圖像分類 如何使用ResNet50模型對圖像進行分類。 import os import cv2 import numpy as np from tensorflow.keras.applications.resnet50 import ResNet50, preprocess_input, decode_predictions from tensorflow.keras.preprocessing import image# 設置…

03-03學習筆記 內存管理初始化

當指針位數為32位時,virtual space 的大小就是 2^32,只有當指針位數是64位時,virtual space 才會增大。 通常virtual space 的劃分方式為 3:1, 依靠 PAGE_OFFSET 常數控制,影響著內核空間和用戶空間的上下文切換效率。 像路由器這…

【Python】進階學習:pandas--read_excel()函數的基本使用

【Python】進階學習:pandas–read_excel()函數的基本使用 🌈 個人主頁:高斯小哥 🔥 高質量專欄:Matplotlib之旅:零基礎精通數據可視化、Python基礎【高質量合集】、PyTorch零基礎入門教程👈 希…

【好書推薦-第七期】《RTC程序設計:實時音視頻權威指南》(音視頻開發必看!)

😎 作者介紹:我是程序員洲洲,一個熱愛寫作的非著名程序員。CSDN全棧優質領域創作者、華為云博客社區云享專家、阿里云博客社區專家博主、前后端開發、人工智能研究生。公粽號:洲與AI。 🎈 本文專欄:本文收錄…

AWTK-MVVM 配置文件模型

配置文件模型 AWTK-MVVM 內置了一些配置文件模型,用于讀寫各種配置文件,比如,JSON/XML/INI/CSV/UBJSON 等。 文件名中可以引用下面的變量。 ${app_dir} 應用程序目錄${user_dir} 用戶目錄${temp_dir} 臨時目錄 json(url${app_dir}/demos/de…

nodejs,JSDOM 補 window環境

window[atob] 是一個在瀏覽器中使用的 JavaScript 函數,用于將 base64 編碼的字符串解碼為原始數據。具體來說,atob 函數會將 base64 字符串解碼為一個 DOMString,其中包含解碼后的二進制數據。這在處理從服務器獲取的 base64 編碼的數據或在…

多平臺拼音輸入法軟件的開發

拼音輸入法從上個世紀發展到現在, 已經發展了幾十年了, 技術上已經非常成熟了. 換句話說, 就是實際上沒多少技術含量, 隨便來個人就能手搓一個. 本文介紹一個簡單的多平臺拼音輸入法軟件的設計和實現, 支持 GNU/Linux (ibus) 平臺 (PC) 和 Android 平臺 (手機). 目錄 1 中文輸…