问题标签 [xlc]
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.
gpu - IBM XL C/C++ 编译器:“没有可用的有效目标设备”
我正在使用 IBM XL C/C++ 编译器编译一些 OpenMP 4.5 代码,目的是将其部分工作卸载到 GPU,如下所示:
编译似乎成功了,只给我以下消息:
但是,当我运行代码时,我收到以下令人不快的消息:
1587-169 没有可用的有效目标设备。
使用nvidia-smi
,我已经验证目标设备实际上是可用的:
我的想法是 XL 以某种方式针对错误的加速器,但我找不到设置它的选项。
如何让我的代码识别和利用可用的 GPU?
aix - xlc 编译器中的等效 -rdynamic 标志
在 AIX 中的 xlc 编译器中是否有等效于 -rdynamic 标志 (gcc) 的功能?
谢谢你。
macros - IBM XL C/C++ 预处理器宏发生了什么变化?
我正在编译农场的 GCC112 上工作,这是一台 Linux ppc64-le 机器。我正在测试 IBM XL C/C++ 并在一些使用 POWER8 的 AES 代码上发现编译失败。该代码在过去几年中一直有效。失败是新的。
编译失败是:
__builtin_crypto_vcipher
是内置的 GCC。进入该路径的唯一方法是如果__xlc__
并且__xlC__
未定义:
检查预处理器宏:
看起来几乎所有的预处理器宏都消失了。单个宏__XLC_BUILTIN_VAARG__
是不正确的。
IBM XL C/C++ 预处理器宏发生了什么变化,我该如何取回它们?
aix - “-qaltivec”与“-qarch=pwr5”不兼容
我无法理解来自 IBM XL C/C++ 的警告。我正在编译农场的 GCC119 上工作,这是一台 AIX ppc64-be 机器。
编译它会导致:
删除-qarch
并不能解决问题,因为编译器默认为-qarch=pwr4
.
我只在使用 XLC 编译器的 AIX 机器上看到这个问题。GCC 在同一台机器上没问题。我用于测试的另外两台机器都可以。事实上,AIX 机器是 S822,运行 Linux 并安装 XLC 的相同 S822 是可以的。
有什么问题,我该如何解决?为什么我们不能在带有 XLC 的 AIX 上使用 Altivec 和 POWER5?
linux - 为什么 typedef 抛出错误:(S) Initializer 必须是有效的常量表达式
在f1.h头文件中使用 typedef 作为结构。示例代码片段如下所示
在f2.h头文件中使用结构mysturct来获取偏移量。代码片段如下所示
当我在AIX机器上使用xlc编译器进行编译时,它会抛出错误,因为“1506-221(S) Initializer must be a valid constant expression”。
我尝试了两个宏,但都得到了相同的错误。f2.h 宏在执行结构大小以获取偏移量时有什么问题吗?
c++ - AIX C++ Map 编译问题
我无法在 AIX 中编译以下代码,而 Linux 和 Solaris 在这方面似乎还可以。它给了我关于 C++ Map 使用和密钥对的问题。
错误也有点神秘
谁能建议我哪里出错了,或者我如何修改代码以使其非常通用。
我在 AIX 上使用 xlc++_r 进行编译。
c++ - “__rotatel4”的名称查找未找到声明
我正在编译农场的 GCC111 上工作。该机器是 AIX 7.1、POWER7 和 IBM XLC 12.1。我正在尝试使用__rotatel4
:
编译结果:
根据编译器手册IBM XL C/C++ for AIX, V12.1 (p. 486),内在函数应该可用。这里是原型,没有POWER6那样的限制:
添加-qarch=pwr7
和/或-D_XOPEN_SOURCE=600
导致相同的错误。我在使用模板编译代码时发现了意外的名称查找错误“1540-0274 (S)”,但它似乎不适用于这里。
如何__rotatel4
在程序中使用?
c++ - 未声明“std::_debug_memset”
我正在编译农场的 GCC119 上工作。该机器是 AIX 7.1、POWER8 和 IBM XLC 13.1。我正在尝试使用调试堆:
编译结果:
两者都<cstring>
导致<string.h>
错误。我也尝试包含<cstdlib>
and <stdlib.h>
,它们导致了同样的错误。
优化和编程指南手册对调试内存函数进行了很好的讨论,但处理方法仅限于 C。它似乎不处理 C++。
如何在 C++ 程序中使用调试堆?
c++ - sigsegv 发生在 posix_memalign 在某些设备中释放后立即发生并在 AIX 中编译选项
我被分配了一个指针,它立即免费,但 sigsegv 取决于某些设备和 xlc 选项。
xlC_r -o cc.o cc -lhm 发生了 sigsegv,但 xlC_r -o cc.o cc 有效。
( lhm 选项正在链接 libhm.a libhu.a。)
( malloc 和 free 作品。只有 posix_memalign 和 free sigsegv 发生。)
源代码:
有用:
aix7.1 tl3 IBM XL C/C++ for AIX, V12.1 (5765-J02, 5725-C72) 版本:12.01.0000.0000
aix6.1 tl9 IBM XL C/C++ for AIX, V10.1 版本:10.01.0000.0008
结果是:
但
aix6.1 tl3 IBM XL C/C++ for AIX,V10.1 版本:10.01.0000.0008
aix5.3 tl9 IBM XL C/C++ for AIX,V10.1 版本:10.01.0000.0000
aix5.3 tl1 C for AIX 版本 6.0。 0.0 版本:10.01.0000.0000
结果是
尽管我已经尝试了一个多星期,但我还没有解决这个问题。我从 AIX 搜索了一份错误报告,但找不到。
无法同时删除 posix_memalign 和 lhm 选项。
您知道解决方法或如何解决它吗?
gcc - Xlc '-qnotwolinkis' 编译器选项的 gcc 等效项是什么?
我目前正在将我的编译器从 AIX XLC 编译器移植到 AIX 上的 GCC 编译器。
我想知道是否有可用于“- qnotwolinkis ”(XLC)的 GCC 等效编译器选项。