腾讯云
开发者社区
文档
建议反馈
控制台
登录/注册
首页
学习
活动
专区
圈层
工具
MCP广场
文章/答案/技术大牛
搜索
搜索
关闭
发布
文章
问答
(9999+)
视频
沙龙
1
回答
英特尔x64处理器上16位和32位
乘法
的CPU周期
c
、
performance
、
x86-64
我正在用C实现一个数学库,
它
大量使用
乘法
。最初,我所有的
乘法
都是使用uint16_t完成的。最近,我将其中许多代码更改为uint32_t,并看到代码运行时几乎翻了一番。我很困惑,因为我认为在英特尔的x64处理器,32位和16位
乘法
采取相同的时钟周期。32-bit, 64-bit现在我的问题是, 在x64平台上,16位
乘法
几乎占32位
乘法
时间的一半,这是正确的
浏览 0
提问于2019-04-26
得票数 2
回答已采纳
2
回答
如何使用Java在两个相同维度的列表之间进行元素级
乘法
java
、
list
、
math
、
java-stream
、
vectorization
我
有
两份清单如下:List<Integer> quantity = Arrays.asList(1,2,3,4,5); 我想在它们之间做元素
乘法
,我知道我
可以
用标准的for循环来实现
它
,但是我想知道我们是否
可以
通过Stream来实现同样的过程,使这个过程更快,更少的资源?类似于Python对NumPy数组所做的事情;与其制作一个for循环,而是
浏览 12
提问于2022-08-09
得票数 3
回答已采纳
1
回答
在下面的循环中使用openMP simd安全
吗
?
c++
、
openmp
、
vectorization
、
simd
我只是更仔细地研究了OpenMP的simd结构,并且有三个循环似乎没有
被
gcc (简短的性能测试)
矢量化
,但我认为它们
可以
。所以我想知道,添加simd杂注是否安全,为什么gcc不对它们进行
矢量化
。因为内部循环,自动向量化是不可能的
吗
? 对于第二个示例,我尝试了OpenMP的自定义缩减声明功能,这实际上并不是必需的。#pragma omp declare reduction(sum :
double
: omp_out += omp_in) initializer(omp_priv = o
浏览 1
提问于2018-04-07
得票数 3
10
回答
回文(C)
performance
、
beginner
、
c
、
palindrome
函数测试所提供的字符串是否是回文,而main函数只是乘以
它
的速度(毕竟,C应该是快速的,对
吗
?)header.hmain.c#include <time.h> for(j = 0; j < 1000000; j++) { } printf("
浏览 0
提问于2015-12-01
得票数 21
回答已采纳
2
回答
C++模板类型检查编译时线程安全?
c++
、
multithreading
、
templates
、
static
、
typechecking
有
一种检查类型是否匹配的标准方法:struct is_same { static const
bool
value = false; }; struct is_same<T, T> { static const
bool
value = true; };if (SamTypeCheck<
double
,
double
>::value) cou
浏览 3
提问于2013-08-31
得票数 1
回答已采纳
1
回答
CUDA中二维正方形矩阵和压缩三对角矩阵的乘积
c++
、
matrix
、
cuda
、
sparse-matrix
、
matrix-multiplication
我
有
两个矩阵#define BLOCK_SIZE 2
double
** B/* sz = A.rowlen = B.rowlen = A.collen = B.collen */ m_array[current_m_idx] = B[i]
浏览 0
提问于2015-04-19
得票数 0
回答已采纳
1
回答
对long
double
数据类型进行openMP向量化操作是不可能的
吗
?
c++
、
parallel-processing
、
x86
、
openmp
、
sse
我正在尝试使用openMP
矢量化
技术来改进这段代码。但在阅读相关阅读材料()时,我发现不可能对long
double
数据类型执行向量化操作。有人能提供为什么会这样的信息,并提出一个解决方案,而不是降低精度
吗
? 该链接中的内容如下:“避免SIMD硬件不支持的操作。我的数据类型大多是long
double
。
浏览 1
提问于2016-05-09
得票数 2
1
回答
C++中两个字符的
乘法
结果应该是什么?
c++
根据C++转换规则,例如,如果int
被
乘以一倍,那么这两者将首先
被
转换成双倍,然后将进行
乘法
。int a = 5;cout<< a * b; // 2.5int b = 5;应用这些规则,我认为将一个字符乘以一个字符不需要转换,
乘法
将产生一个ch
浏览 1
提问于2019-03-02
得票数 0
回答已采纳
2
回答
理论Mpx/s值取决于处理器速度和RAM
c#
、
c++
、
performance
、
math
我的老师想让我评估特定CPU和RAM
可以
处理的Mpixel/second的理论价值。在显示任何加载的视频时,我们必须将该理论值与我们使用两个不同的C#和C++项目获得的实际值进行比较。任何人都
可以
作为一个想法?
浏览 0
提问于2012-10-04
得票数 0
回答已采纳
4
回答
显式/隐式类型转换c++
c++
、
implicit-conversion
、
explicit-conversion
我
有
一行代码我的问题是,转换的顺序和结果是什么?一直在寻找这样的例子,但都没有用。
有
什么好的向导能帮我理解
吗
?
浏览 12
提问于2013-10-01
得票数 4
回答已采纳
4
回答
double
和ffast math上的自动向量化
gcc
、
g++
、
double
、
vectorization
、
fast-math
为什么必须结合使用-ffast-math和g++来使用
double
实现循环的
矢量化
?我不喜欢-ffast-math,因为我不想失去精确度。
浏览 7
提问于2010-05-18
得票数 8
回答已采纳
2
回答
溢出检查无效
c#
、
.net
下面的代码
有
一个60000的数字
乘法
,
可以
将分钟转换为毫秒。我已经实现了溢出检查,如下所示。不过,我还是得到了下面的代码分析--交战。如何克服这一警告而不压制
它
?ApplicationSessionDAL.IsSessionExpired(short)‘中的'sessionExpiryValueInMinutes*60’操作中的潜在溢出: CA2233:更正
浏览 3
提问于2013-01-17
得票数 2
回答已采纳
1
回答
我们需要在C++中进行
矢量化
,还是循环已经足够快了?
c++
、
optimization
、
vectorization
例如,这里
有
两种执行相同计算的方法:ticfor t = 0:.01:1e5 y(i) = sin(t);toc Elapsed time is 1.278207 seconds. % For loop因此,
矢量化
代码的速度几乎要快我们会得到:Elaps
浏览 6
提问于2021-02-08
得票数 4
回答已采纳
2
回答
大双乘大整数
c++
、
double
、
numerical
我成功地调试了我的程序,错误是用一个大的int除以一个大的双,某种形式:对于订单为-10^{9}的my_large_
double
我通过将分母转换为双分母来修正
它
:但是,我想知道错误是从哪里来的,是否
浏览 1
提问于2013-11-26
得票数 2
回答已采纳
2
回答
C++中使用朋友函数的操作符重载
c++
、
operator-overloading
、
friend
我
有
下面的点课。// selectors
double
Y() const;
double
bool
operator == (const Point & p) const; // equally compare return factor * p; #endif /
浏览 0
提问于2018-08-14
得票数 0
回答已采纳
1
回答
C++17中的部分类模板参数推导
c++
、
c++17
、
template-argument-deduction
、
class-template
在下面的示例中,我们使用C++17特性“类模板参数推断”来推断val是Base<int,
double
,
bool
>类型的。., false);现在,是否
可以
部分指定模板参数,并让其余的参数
被
推导出来?实际上是这样的:Base<T
浏览 2
提问于2019-08-19
得票数 9
回答已采纳
1
回答
为什么Matlab比C++快11倍
c++
、
matlab
、
montecarlo
、
matlab-compiler
这与不同,因为加速不是由于矩阵
乘法
(只有一个点乘积
可以
快速完成),而是由于
它
高效的高斯随机数产生器。在Matlab中,代码已被
矢量化
,代码如下所示 return value;BM代码如下{
doub
浏览 4
提问于2016-03-21
得票数 1
回答已采纳
1
回答
通过在MATLAB中对32位整数的运算对固定大小的整数组合进行散列/排序
matlab
、
hash
、
vectorization
、
gpgpu
、
ranking
在MATLAB中,我
有
大量动态创建的表/矩阵,它们的行表示6阶1-50范围内整数的(排序)组合。 我想给每个组合分配一个唯一的值(散列,排名),这样我就
可以
检查相同的组合是否出现在不同的表中。IIRC这个直接的显式公式,虽然
可以
矢量化
,但它需要计算二项式,而这反过来又需要log Gamma函数来避免巨大的阶乘+
double
类型来避免碰撞,如果我没有弄错的话,也就是说速度较慢,因为它是‘非常log Gamma的配对函数:
可以
连续地应用Cantor的配对,这很好,因为它是一个多项
浏览 4
提问于2021-05-09
得票数 1
回答已采纳
10
回答
检查变量是否为双精度数据类型
c#
、
casting
、
double
我需要检查我拥有的变量的数据类型是否为
double
。这是我尝试过的:{}{ MessageBox.Show
浏览 1
提问于2012-03-22
得票数 13
回答已采纳
4
回答
对全局变量使用函数式?
haskell
、
functor
它
工作得很好,但这个类的一个要求是,我需要对两个数字相乘或相加的总次数进行计数。这就是我在其他语言中使用全局变量的原因,我的理解是Haskell对此深恶痛绝。我是这样想的:假设我
有
一些f ::
Double
->
Double
函数。我是否
可以
创建一个数据类型(
Double
, IO),然后使用函数器来定义跨(
Double
, IO)的
乘法
,以便执行
乘法
并将某些内容写入IO。然后我就
可以
把我的新数据传递给我的函数了。
浏览 9
提问于2011-02-26
得票数 2
回答已采纳
点击加载更多
热门
标签
更多标签
云服务器
ICP备案
对象存储
云点播
即时通信 IM
活动推荐
运营活动
广告
关闭
领券