问题标签 [offloading]

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.

0 投票
3 回答
1968 浏览

grails - 强制 Grails/Weblogic 仅使用 HTTPS 协议重定向

我在一个项目中使用 Grails (2.2.2),我的应用程序发出了不需要的 http 重定向而不是 https 重定向。

我们目前在 Oracle Weblogic 前面有一个 F5 负载均衡器。F5 正在从 Weblogic 卸载我们的 SSL。F5 只接受 https 请求,Weblogic 只接受 http 请求。

我的 Grails 项目使用 Spring Security 和 Spring Security CAS 插件。

该问题通常发生在成功的 CAS 登录时。Grails 似乎总是发出 HTTP 重定向。

我的 serverURL 指定 HTTPS,我的所有 CAS 配置变量也是如此。喜欢

有没有办法强制 GRAILS/Weblogic 只发出 https 重定向?

编辑#1 - 更多信息

我试过这样做没有运气:

此外,该行为似乎与不尊重协议的 Spring Security/Spring CAS 插件有关

在 j_spring_security_check 之后发生的重定向似乎总是返回一个 http 重定向而不是一个 https 重定向。这会产生一个问题,因为我们不允许 F5 服务器上的 http 请求。IE

CAS插件的配置:

0 投票
2 回答
371 浏览

openmp - 具有英特尔 MIC 卸载的异构 OpenMP 并行循环

我正在编写一个代码,其中包含一个具有许多迭代(~10^6-10^7)的循环,其中一个数组(比如说,'myresult')是通过对大量贡献的求和来计算的。在带有 OpenMP 的 Fortran 90 中,这将类似于:

代码将在带有英特尔至强协处理器的系统上运行,如果可能的话,当然希望从它们的存在中受益。我曾尝试将 MIC 卸载语句 (!dir$ offload target ...) 与 OpenMP 一起使用,以便循环仅在协处理器上运行,但是当它坐在那里等待协处理器完成时,我正在浪费主机 CPU 时间。理想情况下,可以划分主机和设备之间的循环,所以我想知道以下类似的方法是否可行(或者是否有更好的方法);循环只会在主机上的一个核心上运行(尽管可能使用 OMP_NUM_THREADS=2?):

0 投票
0 回答
580 浏览

caching - 在峰值负载期间更新大量(50K+ 键)缓存(Redis)数据的最佳方法?

环境:多台 web (30)、缓存 (8) 服务器和一台专用数据库服务器。

为了卸载数据库,中央 Redis 缓存和本地内存缓存已就位。

  • 大型公共事件数据根据时间表进行缓存和更新
  • 访问时单独缓存用户特定数据

当大量用户特定数据需求因事件而更新时,就会出现问题。

事件发生时,大约有 200K 的注册用户和大约 10K-20K 的用户(同时)来到该站点。平均每个用户有 5 个缓存键,总共有 50K - 100K 缓存键,其中包含需要更新的用户特定数据。

当前解决方案失败:

  1. 刷新用户缓存会使数据库过载(30 个网络服务器)
  2. 将所有数据加载到缓存中需要很长时间(仅使用了 10%)
  3. KEYS 和 SCAN 可以阻塞缓存(还没试过……这是个问题吗?)

在这种情况下,最佳做法是什么?

0 投票
1 回答
210 浏览

c++ - 地图, double> 在此卸载区域中使用的不可按位复制

我正在使用英特尔 C++ 编译器 v14.0.3。以下代码让我感到困扰:

编译器给出此消息:

我读过这个页面。但我想不出如何传输这些数据。我能做些什么?

对不起我糟糕的英语。谢谢你。

0 投票
2 回答
269 浏览

c++ - 在 Cilk 共享函数中使用 Cilk 减速器

您好,我正在尝试使用 _Cilk_Shared 和 _Cilk_offload 将一些并行工作卸载到 MIC。

我声明了一个 Cilk 共享函数:

在 main 我调用这个函数使用

在这个函数中,所有东西都应该被卸载到 MIC;

我想在 somefun 中声明一个 Cilk 减速器,这样我就可以使用 cilk_for 并附加到一个 cilk 减速器列表中,

但我得到错误:

我知道我可以使用 offload pragma 来做到这一点,所以我应该也可以使用 cilk shared 来做到这一点,对吧?

我找不到使用 _Cilk_shared 和 _Cilk_offload 的具体示例。

提前致谢

0 投票
1 回答
111 浏览

c++ - 为什么使用 _Cilk_offload 卸载希望每个函数都是 _Cilk_shared?

我已将一些全局变量声明为 _Cilk_shared。它们用于我要卸载的功能中它们也用于我不想卸载的某些功能中。

所以最初我只将那些需要卸载的函数声明为_Cilk_shared,并使用_Cilk_offload 调用这些函数。

它编译得很好。当我在主机上运行它时,它只会给出正确的结果。

然后我用 MIC 运行它。它给了我关于无法加载库 blablabla 未定义符号的运行时错误,后跟我没有声明为 _cilk_shared 的函数名称。这些函数也不需要 _cilk_shared。

所以我必须把这些函数改成_cilk_shared。再次运行它。这次 MIC 给出了正确的结果。

我检查了这些函数(我不想卸载并且最初没有声明为 _cilk_shared )是否被卸载,通过使用

结果是它们没有被卸载....

所以我想知道为什么它要我将这些函数声明为_Cilk_shared?

0 投票
1 回答
4668 浏览

gcc - 如何使用 GCC 5.1 和 OpenMP 将工作卸载到 Xeon Phi

背景

我们一直在尝试使用新的GCC 5.1版本将 OpenMP 块卸载到英特尔 MIC(即 Xeon Phi),但没有成功。在 GCC卸载页面之后,我们将build.sh脚本放在一起,为“intelmic”和主机编译器构建“accel”目标编译器。编译似乎成功完成。

然后,我们使用该env.sh脚本尝试编译hello.c下面列出的简单程序。但是,该程序似乎只在主机上运行,​​而不是在目标设备上运行。

由于我们通常不熟悉卸载以及编译 GCC,因此我们可能会做很多错误的事情。但是,我们已经调查了已经提到的资源以及以下资源(我没有足够的代表来发布链接):

  • Xeon Phi 卸载
  • 至强融核教程
  • 英特尔至强融核卸载编程模型

最大的问题是他们通常引用英特尔编译器。虽然我们计划购买副本,但我们目前没有副本。此外,我们的大部分开发管道已经与 GCC 集成,我们更愿意保持这种方式(如果可能的话)。

我们已经安装了最新的 MPSS 3.5 发行版,进行了必要的修改以在 Ubuntu 下工作。我们可以成功通信并检查系统中 Xeon Phis 的状态。

在我们的努力中,我们也从未看到任何迹象表明代码正在麦克风仿真模式下运行。

问题

  1. 有没有人成功构建了实际上卸载到 Xeon Phi 的主机/目标 GCC 编译器组合?如果是这样,您使用了哪些资源?
  2. 我们是否遗漏了构建脚本中的任何内容?
  3. 测试源代码有什么问题吗?它们编译时没有错误(除了下面提到的)并运行 48 个线程(即主机系统中的逻辑线程数)。
  4. 由于谷歌搜索没有透露太多信息,是否有人对下一步有建议(除了放弃 GCC 卸载)?这是一个错误吗?

谢谢!

构建.sh

环境文件

你好.c(版本 1)

我们编译了这段代码:

hello_omp.c(版本 2)

几乎相同的东西,但我们尝试了

句法。事实上,mic它会抱怨,但是对于任何设备号(即 0),它都会在主机上编译和运行。此代码以相同的方式编译。

0 投票
1 回答
859 浏览

openmp - 在 OpenMP 中使用声明目标编译指示的原因

我想知道使用该declare target指令的原因是什么。我可以简单地使用target {, data} map (to/from/tofrom ...)来指定设备应该使用哪些变量。至于函数,从target区域调用的函数是否必须声明为目标?假设,我有以下代码:

是否需要用 包围my_function()声明/定义declare target

0 投票
1 回答
812 浏览

ssl - 使用 SSL 卸载的 ARR:应用需要知道它是 SSL

我已经使用 SSL 卸载建立了一个带有 ARR 的网络农场。尽管从 ARR 到内容站点的连接仅通过 HTTP 进行,但在站点上运行的应用程序需要知道原始 URL 是 HTTPS,以便结果中给出的链接可以是 HTTPS。这可以做到吗?

我知道我可以使用 ARR 服务器上的 URL 重写将原始 HTTPS 状态捕获为新的服务器变量(我正在使用)。HTTP-X-ORIGINAL-HTTPS但是如何使用 URL 重写将其还原到内容站点?显然重定向规则是不合适的;设置服务器变量的none操作看起来可能是这样。我在内容站点上没有 SSL 绑定。我是否必须让我的内容应用程序查找HTTP-X-ORIGINAL-HTTPS? 好像很丑

0 投票
1 回答
642 浏览

c++ - 英特尔至强融核卸载代码 + STL 矢量

我想将存储在 STL 矢量中的数据复制到英特尔至强融核协处理器。在我的代码中,我创建了包含计算所需数据的向量的类。我想在主机上创建类对象,也在主机上初始化数据,然后我想将此对象发送到协处理器。这是一个简单的代码,它说明了我想要做什么。将对象复制到协处理器后,向量为空。有什么问题?如何正确执行?