CUDA 阻塞标志

2024-01-02

创建 CUDA 事件时,您可以选择打开cudaEventBlockingSync旗帜。但是 - 如果创建带有或不带有标志的事件之间存在差异怎么办?我阅读精美的手册 http://developer.download.nvidia.com/compute/cuda/3_0/toolkit/docs/CudaReferenceManual.pdf;这对我来说没有意义。什么是“调用主机线程”,以及什么时候“阻塞”don't使用旗帜?

4.6.2.7 cudaError_t cudaEventSynchronize(cudaEvent_t事件)

阻塞直到事件实际发生 被记录。 ...等待一个 使用创建的事件cudaEventBlockingSync标志将导致 调用主机线程阻塞直到 该事件实际上已经被记录下来。


cudaEventBlockingSync将定义主机将如何等待事件发生。

When cudaEventBlockingSync is SETCPU可以放弃宿主线程。即 CPU 将被传递给不同的线程(可能是一个进程)。宿主线程稍后会重新获取CPU。采用这种方式,主机线程不会独占所有CPU时间,可以允许主机做其他工作。

When cudaEventBlockingSync未设置CPU 将忙等待,即 CPU 将进入检查事件循环。当这种情况发生时,CPU 就会旋转,寻找要发生的事件。这通常会导致 CPU 性能表显示为 100%。通过这种方法,主机线程独占所有 CPU 时间。

未设置cudaEventBlockingSync导致从内核执行结束到控制返回线程的最小延迟。您要使用哪个设置取决于内核正在执行的操作。即事件发生需要多长时间,以及 CPU 阻塞涉及多少调度开销。不设置此标志的代价是在等待事件发生时无法执行任何其他 CPU 工作(其他线程)。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

CUDA 阻塞标志 的相关文章

  • 有没有一种有效的方法来优化我的序列化代码?

    这个问题缺乏细节 因此 我决定创建另一个问题而不是编辑这个问题 新问题在这里 我可以并行化我的代码吗 还是不值得 https stackoverflow com questions 17937438 can i parallelize my
  • 同步不经常更新的哈希图的最佳方式

    我有一个在应用程序中使用的 HashMap 数据是在应用程序初始加载期间从数据库填充的 然后它始终只是读取并且从不更新 会有多个线程不断地读取数据 由于数据永远不会更新 因此我们目前不使用任何同步 仅使用 HashMap 我们现在定义的方式
  • 在多个不同线程之间共享变量

    我想在多个线程之间共享一个变量 如下所示 boolean flag true T1 main new T1 T2 help new T2 main start help start 我想分享flag在主线程和帮助线程之间 这是我创建的两个不
  • CUDA - 将 CPU 变量传输到 GPU __constant__ 变量

    与 CUDA 的任何事情一样 最基本的事情有时也是最难的 所以 我只想将变量从 CPU 复制到 GPUconstant变量 我很难过 这就是我所拥有的 constant int contadorlinhasx d int main int
  • 如何使用 SyncAdapter 处理远程服务器的 RESTful 更新

    我观看了 Google I O REST 演讲并阅读了幻灯片 http www google com events io 2010 sessions developing RESTful android apps html http www
  • 如何为 CUDA 内核选择网格和块尺寸?

    这是一个关于如何确定CUDA网格 块和线程大小的问题 这是对已发布问题的附加问题here https stackoverflow com a 5643838 1292251 通过此链接 talonmies 的答案包含一个代码片段 见下文 我
  • 内联 PTX 汇编代码强大吗?

    我看到一些代码示例 人们在 C 代码中使用内联 PTX 汇编代码 CUDA工具包中的文档提到PTX很强大 为什么会这样呢 如果我们在 C 代码中使用这样的代码 我们会得到什么好处 内联 PTX 使您可以访问未通过 CUDA 内在函数公开的指
  • 本地 Postgres 实例和 Azure Cloud Postgres 实例之间的实时同步

    我需要在本地 postgresql 实例与云 postgresql 实例之间设置实时同步过程 请让我知道我可以通过哪些选项来实现它 我是否必须使用任何特定工具或者可以通过复制进行管理 请指教 使用 PgPool http www pgpoo
  • SSDT SQL Server 数据库项目中用于架构比较的命令行/API?

    在 Visual Studio 2012 中 我们有Schema Compare http msdn microsoft com en us library hh272690 28v vs 103 29 aspx in SSDT http
  • 如何使用 AFNetworking 2 按严格的顺序发送请求?

    我正在进行同步以将 sqlite 数据库镜像到服务器数据库 我有一个主从表 其中的详细信息必须尽快发送到服务器 但是 细节 3 可能会先于细节 2 到达 我需要模仿对文档执行的步骤并尊重操作的顺序 当记录保存在本地时 我会发送通知 然后发布
  • 如何避免服务器端和客户端的重复验证?

    如何避免服务器端和客户端的重复验证 是否有一个网络编程平台可以从另一个生成一个 这样我就不必保持两者同步 有些框架可以从服务器端验证配置生成客户端验证 现在我不知道你使用什么语言或框架 但也许这篇文章可以有所帮助 http www emad
  • 主线程如何在该线程之前运行?

    我有以下代码 public class Derived implements Runnable private int num public synchronized void setA int num try Thread sleep 1
  • CUDA 5.0错误LNK2001:cuda方法无法解析的外部符号

    我的链接器有错误 1 gt ManifestResourceCompile 1 gt All outputs are up to date 1 gt kernel cu obj error LNK2001 unresolved extern
  • 有条件减少 CUDA

    我需要总结一下100000值存储在数组中 但带有条件 有没有办法在 CUDA 中做到这一点以快速产生结果 任何人都可以发布一个小代码来做到这一点吗 我认为 要执行条件约简 您可以直接将条件引入为乘法0 假 或1 真 加数 换句话说 假设您希
  • cudaDeviceScheduleBlockingSync 和 cudaDeviceScheduleYield 之间有什么区别?

    正如这里所说 如何减少 CUDA 同步延迟 延迟 https stackoverflow com questions 11953722 how to reduce cuda synchronize latency delay 等待设备结果有
  • 线程安全的有限大小队列,不使用锁

    我正在尝试编写一个主题队列 但遇到死锁和其他多线程问题 我想用Interlocked CompareExchange避免lock用法 但这段代码并没有按预期工作 它只是擦除整个队列 我在这里做错了什么 public class FixedS
  • 同步访问 Immutable Integer 对象

    代码片段 1 class RequestObject implements Runnable private static Integer nRequests 0 Override public void run synchronized
  • 为什么 cuCtxCreate 返回旧上下文?

    我已经安装了 CUDA SDK 4 2 64 CUDA工具包4 2 64 CUDA 驱动程序 4 2 64 我检查了 windows 中的每个 nvcuda dll 所有这些都是 4 2 版本 但是当我使用驱动程序 api 创建上下文并使用
  • OpenCV 2.4.3rc 和 CUDA 4.2:“OpenCV 错误:没有 GPU 支持”

    我在这张专辑中上传了几张截图 https i stack imgur com TELST jpg https i stack imgur com TELST jpg 我正在尝试在 Visual Studio 2008 中的 OpenCV 中
  • CUDA 8 编译错误 -std=gnu++11

    我正在尝试转换一些代码以使用 CUDA 并且我认为我遇到了兼容性问题 我们使用CMake 这些是我使用的 gcc 和 CUDA 版本 gcc version gcc Ubuntu 5 4 0 6ubuntu1 16 04 5 5 4 0 2

随机推荐

  • 长时间关闭时如何处理servlet请求

    我们需要在 Servlet 应用程序中实现优雅的关闭机制 编辑 我们希望使其尽可能简单 这将处理通过操作系统功能发送的终止信号 这将允许系统管理员使用内置的 shell 实用程序 Windows 上的kill 或taskkill 否则他们必
  • 反应本机保存屏幕到图像问题(react-native-view-shot 模块)

    我想得到反应本机视图镜头 https github com gre react native view shot工作 但我认为模块和我安装的 React Native 工具版本存在某种不兼容性 这阻碍了我的工作 核心问题似乎在于这段代码 i
  • 如何配置 OpenSL 来录制语音通话

    我正在使用 MediaRecorder 开发通话录音应用程序语音通话音频源 在某些棉花糖设备中它崩溃了 然后我将源更改为MIC这里传入的声音没有被记录 由于java的限制 现在我正在研究原生android代码来录制语音通话 我设法使用录制音
  • python 不被识别为内部或外部命令[重复]

    这个问题在这里已经有答案了 我尝试安装this https github com joyent node wiki Installation软件 为此需要Python 我从以下位置安装了Pythonhere http python org
  • PHP 中的随机 ID/数字生成器

    我正在我的数据库中构建一个 代理 ID 列表 满足以下要求 ID 长度必须为 9 位 仅限数字 ID 中的相同数字不得超过 3 个 ID 不能包含超过 2 个连续的相同数字 即 887766551 不能有 888 到目前为止 我已经完成了第
  • 在 Python 中将数据添加到嵌套列表

    我有一个嵌套列表 例如 nlist 1 2 3 4 5 6 7 8 9 在将此列表插入数据库之前 我想向其中添加一个 列 并在新列的每一行中具有相同的值 例如 nlist a 1 2 3 a 4 5 6 a 7 8 9 例如 当原始嵌套列表
  • MVC 4 Web API 帖子

    我想从远程客户端进行插入 因为我需要通过 http 发送数据 我可以使用getPerformances 正确地与httpClient api performances date 0 我想问一下我的postPorformances 我内部的实
  • ProcessBuilder 和 Runtime.exec() 之间的区别

    我正在尝试从 java 代码执行外部命令 但我注意到两者之间存在差异Runtime getRuntime exec and new ProcessBuilder start 使用时Runtime Process p Runtime getR
  • Linux/C++ 如何调试发布应用程序

    我有 linux c 多线程应用程序 现在它已经在生产服务器上进行了测试并且出现了段错误 问题是我无法在任何测试服务器上重现该错误 并且无法访问生产服务器 我没有转储或任何其他有用的信息 仅行 段错误位于 0000000046bf0fb8
  • JTree,始终以“编辑模式”显示所有节点

    我正在显示自定义对象树 并且我有自定义对象CellTreeEditor and CellTreeRenderer set 现在我真正想要的是始终像 编辑模式 一样显示所有对象 现在我有CellTreeRenderer getTreeCell
  • 姜戈/彗星(推):万恶之中最小的?

    我已阅读了我能找到的所有有关 Django 和 HTTP Push 的问题和答案 然而 没有人提供一个清晰 简洁 从头到尾的解决方案来说明如何实现所谓的 comet 功能的基本 hello world 第一个问题 1 HTTP 的问题在多大
  • 在 Shell 脚本中将 Cron 作业设置为每月的第一个工作日

    我是脚本语言新手 谁能解释一下如何设置第一个工作日的 cron 作业 您可以使用以下内容 monthly 每月第一天早上运行一次 0 0 1 home scripts your script file sh 第三次编辑 这将在该月第一个工作
  • 在 OpenCV 中创建 AVI 文件

    我一直在尝试使用 OpenCV 和 Visual Studio 2008 创建一个应用程序 从网络摄像头捕获图像 对它们应用过滤器 然后将它们写入 AVI 文件 除了创建 AVI 文件之外 一切正常 问题是它在我的计算机上可以运行 但在我同
  • HashSet 如何与 hashCode() 配合使用?

    我试图更深入地了解 java util Collection 和 java util Map 但我对 HashSet 功能有一些疑问 在文档中 它说 此类实现 Set 接口 由哈希表 实际上是 HashMap 实例 支持 好的 所以我可以看
  • 抓取 NSDictionary 中的随机条目

    有没有办法在 NSDictionary 中获取完全随机的密钥 NSString key enumeratorForKeysInDictionary nextObject 我有这段代码以非随机方式迭代字典 我应该将所有键添加到 NSSet 中
  • 如何授予apache写入主目录的权限?

    我的服务器位于 var www html 我在 var www html fileio test io test php 有一个 php 脚本 当我尝试运行这个脚本时 我得到 Warning fopen home djameson test
  • Spring Security 配置自动装配自定义 UserDetailsS​​ervice bean

    我最近回到了我一直在从事的一个 Spring 项目 在启动应用程序时遇到了问题 这个问题可能是重复的 但我一直找不到答案 这是我原来的 SecurityConfig java 的一个片段 Configuration EnableWebSec
  • 如何使用Java找到矩阵的鞍点? [关闭]

    Closed 这个问题不符合堆栈溢出指南 help closed questions 目前不接受答案 如何使用Java找到矩阵的鞍点 该鞍点是行中最大的数字 同时也是列中最大的数字 例如 使用这个矩阵 7 2 1 3 5 8 鞍点是 7 和
  • Access - 根据不同的列值获取不同的行数

    我有一个具有以下格式的访问数据库 ID Period Data 13 1 xxxxx 13 2 xxxxx 25 1 xxxxx 25 2 xxxxx 25 3 xxxxx 52 1 xxxxx 52 3 xxxxx 94 1 xxxxx
  • CUDA 阻塞标志

    创建 CUDA 事件时 您可以选择打开cudaEventBlockingSync旗帜 但是 如果创建带有或不带有标志的事件之间存在差异怎么办 我阅读精美的手册 http developer download nvidia com compu