关于Haclon使用GPU加速的代码实例
关于Haclon使用GPU加速的代码实例
read_image(Image, 'T20170902014819_58_2_1.bmp')
*没有加加速并行处理
count_seconds(T1)
for i:= to by
rotate_image(Image, Image1, , 'constant')
endfor
count_seconds(T2)
Time1:=(T2-T1)*
stop() *以下两种加速只能选一种 *GPU加速,支持GPU加速的算子Halcon10只有56个
query_available_compute_devices(DeviceIdentifiers)
DeviceHandle:=
for i:= to |DeviceIdentifiers|- by
get_compute_device_info(DeviceIdentifiers[i], 'name', Nmae)
if(Nmae='Geoforce GTX 1070')//根据GPU名称打开GPU
open_compute_device(DeviceIdentifiers[i], DeviceHandle)
break
endif
endfor
if(DeviceHandle#)
set_compute_device_param (DeviceHandle, 'asynchronous_execution', 'false')
init_compute_device(DeviceHandle, 'rotate_image')
activate_compute_device(DeviceHandle)
endif
count_seconds(T3)
for i:= to by
rotate_image(Image, Image1, , 'constant')
endfor
count_seconds(T4)
Time2:=(T4-T3)*
if(DeviceHandle#)
deactivate_compute_device(DeviceHandle)
endif
stop() *自动加速并行处理
optimize_aop ('rotate_image', 'byte', 'no_file', ['file_mode','model','parameters'], ['nil','threshold','false'])
set_system ('parallelize_operators', 'true')//只需开一次
count_seconds(T5)
for i:= to by
rotate_image(Image, Image1, , 'constant')
endfor
count_seconds(T6)
Time3:=(T6-T5)*
set_system ('parallelize_operators', 'false')//只需最后关一次
stop() set_display_font (, , 'mono', 'true', 'false')
dev_clear_window()
Message:='CPU only Time1='+Time1+'ms, '
disp_message (, Message, 'window', , , 'red', 'false')
stop()
dev_clear_window()
Message:='GPU use Time2='+Time2+'ms, '
disp_message (, Message, 'window', , , 'red', 'false')
stop()
dev_clear_window()
Message:='optimize Time3='+Time3+'ms, '
disp_message (, Message, 'window', , , 'red', 'false')
关于Haclon使用GPU加速的代码实例的更多相关文章
- Javascript如何实现GPU加速?
一.什么是Javascript实现GPU加速? CPU与GPU设计目标不同,导致它们之间内部结构差异很大.CPU需要应对通用场景,内部结构非常复杂.而GPU往往面向数据类型统一,且相互无依赖的计算.所 ...
- 深度学习之卷积神经网络CNN及tensorflow代码实例
深度学习之卷积神经网络CNN及tensorflow代码实例 什么是卷积? 卷积的定义 从数学上讲,卷积就是一种运算,是我们学习高等数学之后,新接触的一种运算,因为涉及到积分.级数,所以看起来觉得很复杂 ...
- GPU加速:宽深度推理
GPU加速:宽深度推理 Accelerating Wide & Deep Recommender Inference on GPUs 推荐系统推动了许多最流行的在线平台的参与.随着为这些系统提 ...
- AI解决方案:边缘计算和GPU加速平台
AI解决方案:边缘计算和GPU加速平台 一.适用于边缘 AI 的解决方案 AI 在边缘蓬勃发展.AI 和云原生应用程序.物联网及其数十亿的传感器以及 5G 网络现已使得在边缘大规模部署 AI 成为可能 ...
- GPU 加速NLP任务(Theano+CUDA)
之前学习了CNN的相关知识,提到Yoon Kim(2014)的论文,利用CNN进行文本分类,虽然该CNN网络结构简单效果可观,但论文没有给出具体训练时间,这便值得进一步探讨. Yoon Kim代码:h ...
- 开启gpu加速的高性能移动端相框组件!
通过设置新的css3新属性translateX来代替传统的绝对定位改变left值的动画原理,新属性translateX会开启浏览器自带的gpu硬件加速动画性能,提高流畅度从而提高用户体验, 代码有很详 ...
- 如何加速MATLAB代码运行
学习笔记 V1.0 2015/4/17 如何加速MATLAB代码运行 概述 本文源于LDPCC的MATLAB代码,即<CCSDS标准的LDPC编译码仿真>.由于代码的问题,在信息位长度很长 ...
- Silverlight - GPU加速
1. 在Silverlight plug-in上设置 <param name="enableGPUAcceleration" value="true" / ...
- 用cudamat做矩阵运算的GPU加速
1. cudamat简介 cudamat是一个python语言下,利用NVIDIA的cuda sdk 进行矩阵运算加速的库.对于不熟悉cuda编程的程序员来说,这是一个非常方便的GPU加速方案.很多工 ...
随机推荐
- 使用Java API方式的MapReduce练习
众所周知,hadoop生态圈的多数组件都是使用java开发的. 那么使用Java API方式实现起来,显得要比其它语言效率更高,更原生态. 前面有一个Hadoop学习笔记02_MapReduce练习 ...
- FCC JS基础算法题(11):Seek and Destroy (摧毁数组)
题目描述: 实现一个摧毁(destroyer)函数,第一个参数是待摧毁的数组,其余的参数是待摧毁的值. 我们可以使用arguments来进行参数的遍历. function destroyer(arr) ...
- 下载安装ngnix
在这个网站上进行下载,http://nginx.org/en/download.html,由于我的是windows系统 我下载解压后,打开文件夹里面看到ngix.exe,我去双击它,发现它就是一闪,后 ...
- JAVA常用设计模式(一、单例模式、工厂模式)
JAVA设计模式之单例模式 import java.util.HashMap; import java.util.Map; /** * 设计模式之单例模式 * 单例模式(Singleton Patte ...
- Flask+uwsgi+virtualenv环境配置
Linux系统版本: SLES12sp3 (阿里云) 1. 首先需要安装python-devel,否则后续安装会报错! rpm -qa|grep python-base 结果: python-base ...
- Linux跨服务器发送文件
在要发送的文件所在的目录下,输入下列命令 第一种: scp -r test.jar root@127.0.0.1:$(pwd)/test.jar 其中root为服务器账户名,127.0.0.1为要发送 ...
- 洛谷P1357 花园(状态压缩 + 矩阵快速幂加速递推)
题目链接:传送门 题目: 题目描述 小L有一座环形花园,沿花园的顺时针方向,他把各个花圃编号为1~N(<=N<=^).他的环形花园每天都会换一个新花样,但他的花园都不外乎一个规则,任意相邻 ...
- Centos6.5搭建Elasticsearch
ElasticSearch是基于Lucene的搜索服务.支持分布式多用户能力的全文搜索引擎,提供RESTful web接口.Elasticsearch是用Java开发的,Apache旗下开源项目,支持 ...
- message box
QMessageBox 弹出框上的按钮设置为中文 Qt 默认的弹出框上的按钮式英文,虽然也知道是什么意思,但终究不如中文看着顺眼. QMessageBox box(QMessageBox::War ...
- 常见模块(三) pickle模块和json模块
(一)json和pickle的区别 1.json是不同编程语言实现数据交换的工具,他是用来把python中的数据对象转换成字符串或者写入文件中的,再由其他语言通过json加载进来. 2.pickle是 ...