问题标签 [hardware-acceleration]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 是否有用于加速矢量计算的 Java 库?
我正在寻找一个允许使用向量(也可能是矩阵)进行一些快速计算的 Java 库。
快速是指它利用了 GPU 处理和/或 SSE 指令。我想知道是否有可能找到更便携的东西。我认识到 JVM 提供了一个厚厚的硬件抽象层。
我遇到过JCUDA,但有一个缺点:在没有 Nnvidia 显卡的计算机上,它应该以仿真模式运行(所以我相信它不会像预期的那样高效)。有人已经试过了吗?
outlook - Outlook 在阅读邮件时崩溃
我们安装了一个 Outlook 插件,在打开一些 html 电子邮件时,Outlook 崩溃了。如果我们删除插件,电子邮件会正常打开,而不会导致 Outlook 崩溃。打开电子邮件时,插件不应该做任何事情。我们无法弄清楚为什么 Outlook 会因为我们的插件而崩溃。我们还禁用了硬件加速渲染我们分析了故障转储,我们在调试日志中得到的内容粘贴在下面:
我很感激在这个问题上的任何帮助。
java - Java 硬件加速
我一直在研究 Java 的硬件加速特性,但我仍然有点困惑,因为我在网上找到的网站都没有直接明确回答我的一些问题。以下是我对 Java 硬件加速的疑问:
1) 在 Eclipse 版本 3.6.0 中,带有 Mac OS X 的最新 Java 更新(我认为是 1.6u10),是否默认启用硬件加速?我在某处读到
应该指示是否启用了硬件加速,并且我的程序在我的主 Canvas 实例上运行以进行绘图时报告返回 true。如果我的硬件加速现在没有启用,或者默认情况下,我需要做什么来启用它?
2)我在这里和那里看过几篇关于BufferedImage和VolatileImage之间区别的文章,主要是说VolatileImage是硬件加速图像并且存储在VRAM中以进行快速复制操作。但是,我还发现了一些 BufferedImage 也被称为硬件加速的实例。BufferedImage 硬件是否也在我的环境中加速?如果两种类型都是硬件加速的,那么使用 VolatileImage 有什么好处?我对在两者都有加速的情况下拥有 VolatileImage 的优势的主要假设是 VolatileImage 能够检测到它的 VRAM 何时被转储。但是如果 BufferedImage 现在也支持加速,那它是不是也内置了同样的检测功能,只是对用户隐藏,以防内存被转储?
3)使用有什么好处吗
与
在一个教程中,我一直在阅读有关正确设置渲染窗口的一些一般概念(教程),它使用 getCompatibleImage 方法,我相信该方法返回一个 BufferedImage,以获取他们的“硬件加速”图像以进行快速绘图,这与问题有关2 关于它是否是硬件加速的。
4)这是较少的硬件加速,但这是我一直很好奇的事情:我需要订购哪些图形被绘制?我知道,当通过 C/C++ 使用 OpenGL 时,最好确保在需要一次绘制的所有位置都绘制相同的图形,以减少当前纹理需要切换的次数。从我读到的内容来看,Java 似乎会为我解决这个问题,并确保以最优化的方式绘制内容,但同样,从来没有人这么清楚地说过这样的话。
5) 哪些 AWT/Swing 类支持硬件加速,应该使用哪些?我目前正在使用一个扩展 JFrame 的类来创建一个窗口,并向它添加一个 Canvas,我从中创建一个 BufferStrategy。这是一种很好的做法,还是我应该以其他方式来实现它?
非常感谢您抽出宝贵时间,我希望我提供了明确的问题和足够的信息,以便您回答我的几个问题。
flash - 在嵌入代码或 AS 中禁用 Adobe Flash Player 硬件加速
我们在我们的网站上运行冲浪相机流,通过我们页面上的最新版本 (5.4) JWPlayer 播放。
最近我们切换到另一个流媒体服务和 H.264 流,因为我们计划在不久的将来流到 iOS 设备,但是这在客户端引入了一个错误,用户无法接收视觉(他们只看到通常可以看到视频的黑屏)。
我们发现禁用硬件加速(在 Flash Player 10.1+ 中引入)可以解决此问题,并且鉴于发生此问题的环境范围,我敢打赌这与特定显卡、它们的驱动程序以及如何他们处理视觉解码等。
我们发现的与禁用硬件加速相关的文档仅表明这可以通过wmode
参数来完成,即通过将其设置为,wmode="opaque"
或者wmode="transparent"
这似乎并非在所有情况下都有效(在大多数情况下,问题不再存在)但是,我们仍然看到 30% 的用户遇到此问题。
我们可以要求用户自己禁用硬件加速,我们已经提供了如何做到这一点的详细信息,但对我来说这只是一个临时修复,我很好奇是否有更永久的东西我们可以放入直到 Adobe 解决这个问题?
ios - iPhone 是否支持硬件加速的 AES 加密?
我可以在 iPhone/iPad 上找到对“硬件加速 AES 加密”的引用。但是我能找到的用于 AES 加密 ( CCCrypt ) 的 API 根本不谈论硬件加速。
有谁知道这些 API 是硬件加速的 API 还是其他 API?
c# - 软件渲染模式 - WPF
我有一个 WPF 用户控件,我需要在RenderMode.SoftwareOnly
. 由于我使用的是 .NET 3.5,因此我必须执行以下操作:
但这不适用于我的应用程序,WPF 程序在少数机器上崩溃,并且在注册表级别关闭硬件加速似乎可以解决问题。
上面的代码是在Loaded
窗口事件中编写的。如果我是正确的,Loaded
事件会在控件呈现后发生(MSDN)。那么在该事件中使用上述代码是否有意义?如果不是,哪个事件适合它?
另外,RenderMode
视觉上的设置会影响它的孩子吗?还是我需要为每个子元素专门设置它?
opengl - OpenGL 4.0 GPU 绘图功能?
在 Wikipedia 和其他来源对 OpenGL 4.0 的描述中,我读到了这个特性:
绘制由 OpenGL 或 OpenCL 等外部 API 生成的数据,无需 CPU 干预。
这是指什么?
编辑:
似乎这必须指的是 Draw_Indirect 我相信它以某种方式扩展了绘图阶段以包括来自着色器程序或互操作程序的反馈(基本上是 OpenCL/CUDA) 看起来好像有一些警告和技巧来让电话继续停留在 GPU 上持续第二次运行后的任何延长时间,但这应该是可能的。
如果有人可以提供更多关于在没有 CPU 的情况下使用绘图命令的信息,或者可以更好地描述间接绘图,请随时这样做。将不胜感激。
android - 在 Honeycomb 上启用硬件加速时支持哪些 API?
Honeycomb 文档含糊不清:
启用硬件加速渲染器后,Canvas、Paint、Xfermode、ColorFilter、Shader 和 Camera 中的大多数操作都会被加速。
启用硬件加速时,是否有确切的 API 列表(和不支持)?某些方法会因异常而快速失败,而其他功能在启用加速时会以不同的方式呈现。
例如, Canvas.clipPath(...) 快速失败并出现异常。尽管clipPath API没有提及这一点,但在真实硬件上进行测试时很容易确定。
其他功能在不引发异常的情况下无法正确呈现,从而导致移植工作困难且耗时。例如,我有一个使用由 RadialGradient 和 LinearGradient 组成的 ComposeShader 的屏幕,使用 PorterDuff.Mode.SRC_IN。没有加速看起来很漂亮,但启用加速时完全错误。
javascript - 是否可以在 JavaScript 中通过浏览器检测硬件加速?
我注意到,由于字体渲染的变化,使用硬件加速的浏览器的字体大小并不相同 - 使字符看起来更小。在具有水平导航的网站上,这实际上已成为一个问题。
是否可以使用 JavaScript 或 JS 库来检测浏览器中启用(或禁用)的硬件加速?
Modernizr 似乎没有提供这种选择。
graphics - 如何在单板计算机上使用 2d/3d 图形加速
这可能是一个有点愚蠢的问题,但是如果您使用的是一台吹嘘它具有 2d/3d 图形加速功能的单板计算机,那么这实际上意味着什么?
如果它支持 DirectX 或 OpenGL 显然我可以使用该框架,但我不熟悉从这方面工作。我不知道这是否意味着它能够将这些库包含在操作系统中,或者它是否只是意味着它可以更快地执行某些类型的数学运算(默认情况下或通过其他一些过程)
任何关于这意味着什么或我可以使用的资源位置的澄清将不胜感激。