阅读更多
Khronos小组于本周一(7月22日)发布了OpenCL 2.0版本,该版本可为显示芯片提供更好的独立性,以便能为通用软件计算出更大的力。

OpenCL是让显示芯片也能为通用软件提供计算能力的标准,标准制定者就是 Khronos Group。Khronos此次发布的是OpenCL 2.0临时规范,预计正式版本的发布要等到6个月以后,在此期间,开发者可以进行尝试并反馈问题。更多详细内容参见:OpenCL 2.0



“OpenCL工作小组已经将开发者反馈意见和新兴的硬件功能结合在一起,用以创建先进的并行程序开发平台——OpenCL 2.0,”OpenCL主 席兼显示芯片制造商Nvidia的移动副总裁以及Khronos Group的主 席Neil Trevett说。“OpenCL将继续集中精力在台式机和移动设备上。另外,还可以为App开发人员提供基本的、便携式的加速引擎、中间设备库和高级编程语言,为此需要利用异构计算资源包括CPUs,GPUs,DSPs和FPGAs。”

OpenCL 2.0的新特性主要包括:

1. 共享虚拟内存

主机和设备内核能够直接分享像树状结构和链结串列一样复杂的指针,包括数据结构,并且能够实现更灵活的程序设计技巧,消除主机和设备之间昂贵的传输成本。

2. 动态平行

设备内核可以在没有主机交互作用的情况下,将内核有序排列到相同的设备里,支持灵活的工作调度模式,而且避免了在设备和主机之间传输执行控制和数据的必要,这就相当于解决了主处理器的瓶颈。

3. 通用地址空间

在没有为参数指定地址空间的情况下也可以编写函数,特别适合那些指针类型的参数,消除为每一个指定地址空间编写多重函数的需求。

4. 图像

改进的图像支持包括sRGB图像和3D图像,内核处理器不但能够读出这些图像,还能编写这种类型的图像。同时,用一个雾化贴图或多采样OpenGL纹理创建的OpenCL图像可以改善OpenGL交互操作。

5. C11 Atomics

C11 Atomics的一个子集和同步操作能够让同在一个工作组里的工作项与工作项之间的任务是相互可见的,通过交叉在不同工作组里的方式运行在设备上,或者是在OpenCL设备和主机之间进行数据共享。

6. 管线

管线是内存对象,用于存储数据并有序的组织成为一个FIFO(先进先出),OpenCL 2.0为内核提供了内置函数来读取数据或写入管线,OpenCL设备能够高效优化管线数据架构的简单编程。

7. 可在Android上安装的客户端驱动程序扩展

可以让OpenCL编译器在Android系统上能够被发现并加载成为一个共享对象。

详细信息:Khronos
  • 大小: 126.2 KB
来自: CSDN
1
1
评论 共 0 条 请登录后发表评论

发表评论

您还没有登录,请您登录后再发表评论

相关推荐

  • 浅尝辄止 FreeBSD之安装篇(完整图解)

    FreeBSD是一种类UNIX操作系统,是由经过BSD、386BSD和4.4BSD发展而来的Unix的一个重要分支。FreeBSD 为不同架构的计算机系统提供了不同程度的支持。并且一些原来BSD UNIX的开发者后来转到FreeBSD的开发,使得FreeBSD在内部结构和系统API上和UNIX有很大的兼容性。由于FreeBSD宽松的法律条款,其代码被好多其他系统...

  • 线上项目频繁Full GC问题排查解决

    1、首先查看GC日志,通过jstat -gcutil -t pid 1000 1000查看GC日志,看到FullGC的次数达到了接近两万次。。。并且GC速率没有下降的趋势。2、又通过jmap -heap pid查看堆内存情况,发现Old区Free剩余2M。。3、通过...

  • 频繁full GC排查

    场景:通过prometheus去拉取通过actuator组件暴露的端点中的JVM相关指标。通过告警规则,检测线上服务出现频繁full gc。

  • 线上故障排查-频繁fullGC问题排查

    服务器java进程经常占用内存过高原因分享,jvm 命令使用

  • 纯干货:线上出现fullGC次数很多的排查思路以及实践总结

    最近线上发布了一个版本,导致full gc次数忽然就上去了,虽然对线上业务造成的影响还不是很大,但是为了以防万一还是对这个问题做了相关排查。 GC命令排查 一开始还是从堆的变化开始: # 查看每秒的堆发生的变化以及...

  • 生产环境Full GC并宕机的亲身经历

    Full GC很正常,但是频繁的Full GC并且导致线上CPU飙升,然后服务直接宕掉,这是很可怕的。 2018年11月19号,项目升级,起初观察日志都OK,但是半小时后,服务无法访问,界面无法打开(最初是Zabbix监控CPU飙升,...

  • 记一次生产环境频繁耗时GC导致的周期性响应缓慢问题

    记一次生产环境频繁耗时GC导致的周期性响应缓慢问题1.问题来源与背景2.问题查询与定位2.1 日志中心查询2.2 容器日志查询3.问题排查3.1 网络排查3.2 日志观察4.总结 1.问题来源与背景 服务使用K8s集群部署,重要的...

  • JVM调优之处理频繁Full GC问题

    首先需要知道可能触发Full GC的机制,才可对症下药 老年代空间不足。 永生代或者元数据空间不足。 System.gc()方法调用。 CMS GC时出现promotion failed和concurrent mode failure YoungGC...

  • java进阶篇--生产环境如何排查bug和优化 JVM?

    我们本课时的面试题是,生产环境如何排查问题? 回答: 如果是在生产环境中直接排查 JVM 的话,最简单的做法就是使用 JDK 自带的 6 个非常实用的命令行工具来排查。它们分别是:jps、jstat、jinfo、jmap、jhat 和 ...

  • 记 2022-03-03 线上系统响应缓慢 频繁FullGC问题

    查看对应机器的线上监控,发现CPU很高,并且发生了频繁的FullGC; 问题排查过程 用web页面操作服务器,发生问题的机器生成heap dump堆转储文件; 将文件下载到本地以后用java的jdk下的bin目录中的jvisualvm打开堆...

  • 让bug无处藏身,Java 线上问题排查神器,你学废了吗?

    分享的主要目的是想让对线上问题接触少的同学有个预先认知,免得在遇到实际问题时手忙脚乱。只不过这里先提示一下。在线上应急过程中要记住,只有一个总体目标:尽快恢复服务,消除影响。不管处于应急的哪个阶段,...

  • fullGC 频繁导致CPU飙高

    http 503 :因暂时超载或临时维护,您的 Web 服务器目前无法处理 HTTP 请求。 其含义是, 这是一个暂时情况,会有一些延误, 过 后将会得到缓解。 有些服务器在这种情况下也许干脆拒绝套接字(socket) 连接,在...

  • 性能优化-内存泄漏、内存溢出、cpu占用高、死锁、栈溢出、FullGC频繁检测手段-总结与分享

    内存泄露的程序,JVM频繁进行FullGC尝试释放内存空间,进而会导致CPU飙升 内存泄露过多,造成可回收内存不足,程序申请内存失败,结果就是内存溢出。 基本命令 首先了解各个基本命令、工具的使用,用它们去分析JVM...

  • JVM服务器在线问题排查方法(CPU占用率高、内存溢出等问题排查)

    前言:线上服务器在访问量大,或者其他特殊情况下,可能会出现CPU占用高,或者服务直接不停FULL GC导致服务器卡顿甚至挂掉的情况,针对不同情况,根本原因也各有差异,前段时间我们公司服务器就出现了大量redis链接...

  • 生产环境如何定位JVM问题?

    在生产环境中直接排查 JVM ,最简单的做法就是使用 JDK 自带的 6 个非常实用的命令行工具来排查。它们分别是:jps、jstat、jinfo、jmap、jhat 和 jstack,它们都位于 JDK 的 bin 目录下,可以使用命令行工具直接运行...

  • JVM内存配置参数、GC工作原理及Minor GC、FullGC

    就避免过于频繁的产生FullGC(Old Generation满了一般都会产生FullGC) 虚拟机在进行MinorGC(新生代的GC)的时候, 会判断要进入OldGeneration 区域对象的大小,是否大于Old Generation剩余空间大小, 如果大于...

  • java要频繁调用容器时_Arthas排查Kubernetes中的应用频繁挂掉重启问题

    照例先讲下问题发生的背景,一个很老的web系统部署在tomcat容器里。近期打成了镜像丢到了Kubernetes环境中运行,总是各种挂,在Kubernetes层面定位了很久没找到具体问题,但是初步定位到是因为系统中的报表导出接口...

Global site tag (gtag.js) - Google Analytics