A.I.에서 박사 학위를 연구하고 있습니다. 테스트 플랫폼으로 CUDA 라이브러리를 사용해야하는 부분에 대해 알아 보았습니다. 이전에 CUDA와 함께 해왔고, GPGPU가 어떻게 작동하는지에 대한 기본적인 지식을 가지고 있지만 float 정밀도에 어려움을 겪고 있습니다. GTX680을 보면 FP64 : 1/24 FP32를 볼 수 있지만 Tesla는 1.31
필자는 파이썬에서 단정도 부동 소수점을 정확히 계산할 필요가 있습니다. 내가 시도한 옵션은 decimal.Decimal 및 numpy.float32입니다. 그러나 Decimal은 IEEE 754를 기반으로하지 않으며 float32은 반올림 모드를 사용할 수 없습니다. 놀랍게 반올림 모드는 IEEE 754의 표준 기능이지만 파이썬에서 내장 된 구현은 없습니다
어제 나는 question에 부동 소수점 산술의 정확성을 잃어버린 이유를 물었습니다. x87 레지스터에 중간 결과가 저장되는 방법에 대한 답변을 받았습니다. 이것은 도움이되었지만 세부 사항 중 일부는 여전히 나를 벗어났습니다. 다음은 이전 질문에서 제시 한 프로그램의 변형입니다. VC++ 2010 Express를 디버그 모드로 사용하고 있습니다. int m
실수 값 행에 대한 float 값 분포를 더 잘 이해하려고합니다. public class Foo {
public static void main(String[] args)
{
for(int i=0; i<24; i++)
{
int count = 0;
float R = (float) Math.pow
다음 코드는 고유 벡터 을 컨테이너로 사용하거나 또는 간단한 C- 배열을 사용하여 동일한 계산을 실현합니다. 그것은 닫히지 만 비트 대 비트가 아닌 동일한 결과를 생성합니다. 최종 수학 연산은 x * alpha + y * beta입니다. #include <Eigen/Eigen>
int main()
{
Eigen::VectorXd x(2);
부동 소수점 숫자가 있지만 2 포인트 정밀도 때까지만 숫자를 원합니다. 어떻게 이것을 C++로 얻을 수 있습니까? float foo(float num) { // num=1234.567891
// code
return num2; // returns 1234.560000
}
이것은 사소한 문제이며 여기에서 무슨 일이 일어나고 있는지 알고 싶었습니다. 다음 내가 지금 stata x1 x2 x2
70001102 70001102 70001102
70001102 70001102 70001102
의 행 최대를 찾기 위해 노력하고있는 내 샘플 데이터이며, 나는에, 그러나 row max: egen maxi rmax(x1 x
OBJ (C-IO에서?) 결과 c = 1001에서 float a = 0.99999f;
int b = 1000;
int c = a + b;
. b이 float (iOS 전용)로 변환 되었기 때문에 a + b은 1000.9999에 대한 정밀도가 충분하지 않고 (은?) 높은 값으로 반올림되기 때문에 발생하는 것으로 나타났습니다. a이 0.999f 인 경우
나는 2 개의 부동 소수점 값을 비교해야하며, 소수점 2 자리까지의 차이를 반올림 할 수 없기 때문에 비교할 때마다 오류가 발생합니다. 그것을 값과 비교하십시오. 예 : 고객이 지불 한 금액이 60.36이고 발행 된 법안이 30.24 인 경우 차이가 30.120001입니다. 나는 플로어 함수를 사용하여 십진수 두 자리를 반올림하여 시도해 보았습니다. flo