1 (bit ) ( ) PC WS CPU IEEE754 standard ( 24bit) ( 53bit)

Size: px
Start display at page:

Download "1 (bit ) ( ) PC WS CPU IEEE754 standard ( 24bit) ( 53bit)"

Transcription

1 GNU MP BNCpack ( ) Linux Conference

2 1 (bit ) ( ) PC WS CPU IEEE754 standard ( 24bit) ( 53bit)

3 :9:; <>= R )TSVU!" # %$ & " # %$ & " # %' (*) " # %+-, " # " #./ " # " # 0 1 " # %' (*) " # 2, " # 1: IEEE754 IEEE754 3

4 CC "!$#&%('*)+,.- / :93; )+,.-</1032 = C E8@ EB@ 2: " #$%'& (*) +%'&!! 3: 4

5 PC IEEE754 5

6 open source software proprietary software GNU MP[6]( GMP ) GMP BNCpack[5] 6

7 2 (integer) (floating-point number) CPU (bit ) bit N 2 N+1 (overflow) 7

8 (base) (mantissa) (exponent) (round) 8

9 IEEE754 standard 2 IEEE754 IEEE (23) (52) bit 1bit bit p ε M ε M = 2 (p 1) (1) 0 ε M IEEE754 standard , 16 ε M 1 9

10 2 IEEE754 standard 2 10

11 2.1 ( ) 3 (ill-conditioned) n Ax = b A cond(a) = A A 1 x

12 Logistic x 0 = x n+1 := 4x n (1 x n ) {x n } 1 x n x n x 100 = IEEE [2] 12

13 2.2 A x A = , x = Conjugate-Gradient IEEE754 (float), (double) 128bit, 256bit, 512bit, 1024bit r k 2 = b Ax k 2 r

14 b-axi 2 1 IEEE754 float 1e-05 IEEE754 double 1e-10 1e-15 gmp 128bits gmp256bits 1e-20 gmp 1024bits gmp 512bits : CG IEEE754 CG 512bit IEEE754 IEEE754 14

15 10 15 Pentium IV IEEE GMP 4.1 (bits)

16 3 GNU MP GNU MP( GMP ) 1991 ANSI C (mpz t) (mpq t) Version 2 (mpf t) BNCpack GMP C 2048bit #include <stdio.h> #include "gmp.h" main() { int i; mpf_t x[102]; mpf_set_default_prec(2048); mpf_init_set_str(x[0], "0.7501", 10); for(i = 1; i <= 101; i++) mpf_init(x[i]); } for(i = 0; i <= 100; i++) { mpf_ui_sub(x[i+1], 1UL, x[i]); mpf_mul(x[i+1], x[i], x[i+1]); mpf_mul_ui(x[i+1], x[i+1], 4UL); if(i%10 == 0) gmp_printf("%5d %58.50Fe\n", i, x[i]); } 16

17 2 17

18 Version 4 C++ GMP Project MPFR [7] 4 C++ C #include <iostream.h> #include "gmpxx.h" main() { mpf_set_default_prec(2048); int i; mpf_class x[102]; x[0] = "0.7501"; } for(i = 0; i <= 100; i++) { x[i+1] = 4 * x[i] * (1 - x[i]); if(i%10 == 0) gmp_printf("%5d %58.50Fe\n", i, x[i].get_mpf_t()); } 4 MPFR GMP mpf t IEEE754 standard 18

19 GMP MPFR 1CPU PC GMP BNCpack GMP CPU Intel Pentium III 750MHz RAM 384MB OS Windows XP Professional C compiler GCC 2.95 GMP Ver (./configure; make; make install ) Software MuPAD Pro 2.0, Mathematica 4.1 MPFR st = cputime(); for (i=0;i<n;i++) mpf_add(z, x, y); printf("x+y took %1.2ems\n", (double)(cputime()-st)/n);

20 CPU GMP order GMP GMP GMP Knuth[9] 20

21 1: IEEE754 IEEE x + y x y x y x/y x : MuPAD Pro Mathematica GMP x + y x y x y x/y x x + y x y x y x/y x x + y x y x y x/y x

22 CPU Intel Pentium IV 2.2GHz RAM 512MB OS RedHat Linux 7.3 C compiler GCC 2.96 GMP & MPFR Ver.3.1.1, Ver.4.1 (./configure; make; make install ) 22

23 GMP 3.1.1, 4.1, MPFR GMP GMP 4.1 GMP 4.1& MPFR x + y x y x y x/y x x + y x y x y x/y x x + y x y x y x/y x

24 4 BNCpack BNCpack Basic Numerical Computation PACKage GMP Version 2 GMP GMP Fortran GMP Version 3 ANSI C C(not C++) 24

25 buggy 1. GMP (Ver.0.3 MPFR ) 2. (C++ Complex GSL[8] ) 3. ( ( ) ) 4. ( CG ) 5. ( ) 6. (Newton Newton, Regula-Falsi ) 7. (DKA ) 8. ( Romberg ) 9. ( Runge-Kutta ) 25

26 BNCpack GMP typdef MPFCmplx MPFPoly MPFArray, CMPFArray( ) MPFStack MPFVector MPFMatrix typedef struct{ unsigned long int prec; mpf_t re; mpf_t im; } mpfcmplx; typedef mpfcmplx *MPFCmplx; prec (bit ) BNCpack GMP mpf t BNCpack 26

27 4.1 #ifdef USE_GMP /* GMP */ /* */ MPFCmplx mpfca, mpfcb, mpfcc; /* */ /* Default: 128bit */ set_bnc_default_prec(128); /* Default */ mpfca = init_mpfcmplx(); mpfcb = init_mpfcmplx(); /* 256bit */ mpfcc = init2_mpfcmplx(256); /* mpfa := 1 + 2i */ /* mpfb := 3 + 4i */ /* mpfc := rand() + rand() i */ set_real_mpfcmplx_ui(mpfca, 1); set_image_mpfcmplx_ui(mpfca, 2); set_real_mpfcmplx_ui(mpfcb, 3); set_image_mpfcmplx_ui(mpfcb, 4); set_real_mpfcmplx_ui(mpfcc, rand()); set_image_mpfcmplx_ui(mpfcc, rand()); /* mpfcc := mpfca + mpfcb */ add_mpfcmplx(mpfcc, mpfca, mpfcb); /* */ printf("mpfca + mpfcb = "); print_mpfcmplx(mpfcc); /* */ free_mpfcmplx(mpfca); free_mpfcmplx(mpfcb); free_mpfcmplx(mpfcc); #endif 27

28 4.2 mpfmat a, mpfmat b #ifdef USE_GMP /* */ MPFMatrix mpfmat, mpfmat_a, mpfmat_b; mpf_t tmp, sqrt2; long int dim, row_dim, col_dim, i, j; /* Default: 128bit */ set_bnc_default_prec(128); /* */ mpfmat = init_mpfmatrix(row_dim, col_dim); mpfmat_a = init_mpfmatrix(row_dim, col_dim); mpfmat_b = init_mpfmatrix(row_dim, col_dim); mpf_init(tmp); mpf_init(sqrt2); mpf_sqrt_ui(sqrt2, 2UL); /* mpfmat[i][j] := sqrt(2) * (i+1) / (j+1) */ for(i = 0; i < row_dim; i++) { for(j = 0; j < col_dim; j++) { mpf_mul_ui(tmp, sqrt2, i+1); mpf_div_ui(tmp, tmp, j+1); set_mpfmatrix_ij(mpfmat, i, j, tmp); } } /* mpfmat_a := mpfmat */ subst_mpfmatrix(mpfmat_a, mpf_mat); /* mpfmat_b := mpfmat * mpfmat_a */ mul_mpfmatrix(mpfmat_b, mpfmat, mpfmat_a); /* */ printf("mpfmat_b:\n"); print_mpfmatrix(mpfmat_b); /* */ mpf_clear(tmp); mpf_clear(sqrt2); free_mpfmatrix(mpfmat); free_mpfmatrix(mpfmat_a); free_mpfmatrix(mpfmat_b); #endif 28

29 4.3 LU #ifdef USE_GMP /* Default: 256bit */ set_bnc_default_prec(256); /* */ mpf_init(reps); mpf_init(aeps); mpfa = init_mpfmatrix(dim, DIM); mpfb = init_mpfvector(dim); mpfx = init_mpfvector(dim); mpfans = init_mpfvector(dim); /* A b, x */ get_mpfproblem(mpfa, mpfb, mpfans); /* A */ print_mpfmatrix(mpfa); /* LU */ ret_mpf = MPFLUdecomp(mpfa); ret_mpf = SolveMPFLS(mpfx, mpfa, mpfb); /* */ for(i = 0; i < DIM; i++) { printf("%5ld ", i); mpf_out_str(stdout, 10, 0, \ get_mpfvector_i(mpfx, i)); printf(" "); mpf_out_str(stdout, 10, 0, \ get_mpfvector_i(mpfans, i)); printf("\n"); } /* */ mpf_clear(reps); mpf_clear(aeps); free_mpfmatrix(mpfa); free_mpfvector(mpfb); free_mpfvector(mpfx); free_mpfvector(mpfans); #endif 29

30 5 BNCpack BNCpack 1. ANSI C ANSI C GSL[8] C++ template BLAS LAPACK[10] 4. 30

31 5.1 BNCpack C GMP 2 C++ C++ STL 31

32 5.2 GSL(GNU Scientific Library)[8] BNCpack Bessel IEEE754 standard LAPACK(+BLAS) LAPACK 32

33 5.3 ( ) Mathematica Mathematica n := 50; digits := 100; a := Table[N[Sqrt[2]*i/j, digits], {i, 1, n}, {j, 1, n}]; b := Table[N[Sqrt[2]*i/j, digits], {i, 1, n}, {j, 1, n}]; time := Timing[a. b;]; Print[time]; Clear[a, b, time, n, digits]; 33

34 Mathematica BNCpack Mathematica BNCpack Mathematica BNCpack Mathematica BNCpack Mathematica 2 3 Mathematica Mathematica BNCpack Math./BNC

35 ( 3) 1 35

36 6 CPU Mathematica, MuPAD GMP GMP GMP BNCpack 36

37 BNCpack bug ANSI C 4. BNCpack free open 37

38 [1],,, [2], [3],,, [4],,, [5] BNCpack, [6] GNU MP, [7] The MPFR Library, [8] The GNU Scientific Library, [9] D.E.Knuth/, /,,1986. [10] LAPACK, [11] MuPAD, [12] Wolfram Research, 38

Krylov (b) x k+1 := x k + α k p k (c) r k+1 := r k α k Ap k ( := b Ax k+1 ) (d) β k := r k r k 2 2 (e) : r k 2 / r 0 2 < ε R (f) p k+1 :=

Krylov (b) x k+1 := x k + α k p k (c) r k+1 := r k α k Ap k ( := b Ax k+1 ) (d) β k := r k r k 2 2 (e) : r k 2 / r 0 2 < ε R (f) p k+1 := 127 10 Krylov Krylov (Conjugate-Gradient (CG ), Krylov ) MPIBNCpack 10.1 CG (Conjugate-Gradient CG ) A R n n a 11 a 12 a 1n a 21 a 22 a 2n A T = =... a n1 a n2 a nn n a 11 a 21 a n1 a 12 a 22 a n2 = A...

More information

Copyright c Tomonori Kouya BNCpack LGPL3

Copyright c Tomonori Kouya BNCpack LGPL3 BNCpack Basic Numerical Calculation package Version 0.7 August 22, 2011 Tomonori Kouya at Kakegawa, JAPAN http://na-inet.jp/ ([email protected]) Copyright c 2000-2011 Tomonori Kouya BNCpack LGPL3 Chapter

More information

Copyright c Tomonori Kouya BNCpack LGPL3

Copyright c Tomonori Kouya BNCpack LGPL3 BNCpack Basic Numerical Calculation package Version 0.7 September 1, 2011 Tomonori Kouya at Kakegawa, JAPAN http://na-inet.jp/ ([email protected]) Copyright c 2000-2011 Tomonori Kouya BNCpack LGPL3 Chapter

More information

http://na-inet.jp/ 4 @ 2015 1 19 ( ) MPFR/GMP BNCpack (cf., Vol, 21, pp.197-206, 2011) Runge-Kutta (cf. arxiv preprint arxiv:1306.2392, Vol.19, No.3, pp.313-328, 2009) Strassen (cf. JSIAM Letters, Vol.6,

More information

115 9 MPIBNCpack 9.1 BNCpack 1CPU X = , B =

115 9 MPIBNCpack 9.1 BNCpack 1CPU X = , B = 115 9 MPIBNCpack 9.1 BNCpack 1CPU 1 2 3 4 5 25 24 23 22 21 6 7 8 9 10 20 19 18 17 16 X = 11 12 13 14 15, B = 15 14 13 12 11 16 17 18 19 20 10 9 8 7 6 21 22 23 24 25 5 4 3 2 1 C = XB X dmat1 B dmat2 C dmat

More information

untitled

untitled A = QΛQ T A n n Λ Q A = XΛX 1 A n n Λ X GPGPU A 3 T Q T AQ = T (Q: ) T u i = λ i u i T {λ i } {u i } QR MR 3 v i = Q u i A {v i } A n = 9000 Quad Core Xeon 2 LAPACK (4/3) n 3 O(n 2 ) O(n 3 ) A {v i }

More information

44 6 MPI 4 : #LIB=-lmpich -lm 5 : LIB=-lmpi -lm 7 : mpi1: mpi1.c 8 : $(CC) -o mpi1 mpi1.c $(LIB) 9 : 10 : clean: 11 : -$(DEL) mpi1 make mpi1 1 % mpiru

44 6 MPI 4 : #LIB=-lmpich -lm 5 : LIB=-lmpi -lm 7 : mpi1: mpi1.c 8 : $(CC) -o mpi1 mpi1.c $(LIB) 9 : 10 : clean: 11 : -$(DEL) mpi1 make mpi1 1 % mpiru 43 6 MPI MPI(Message Passing Interface) MPI 1CPU/1 PC Cluster MPICH[5] 6.1 MPI MPI MPI 1 : #include 2 : #include 3 : #include 4 : 5 : #include "mpi.h" 7 : int main(int argc,

More information

Bessel ( 06/11/21) Bessel 1 ( ) 1.1 0, 1,..., n n J 0 (x), J 1 (x),..., J n (x) I 0 (x), I 1 (x),..., I n (x) Miller (Miller algorithm) Bess

Bessel ( 06/11/21) Bessel 1 ( ) 1.1 0, 1,..., n n J 0 (x), J 1 (x),..., J n (x) I 0 (x), I 1 (x),..., I n (x) Miller (Miller algorithm) Bess Bessel 5 3 11 ( 6/11/1) Bessel 1 ( ) 1.1, 1,..., n n J (x), J 1 (x),..., J n (x) I (x), I 1 (x),..., I n (x) Miller (Miller algorithm) Bessel (6 ) ( ) [1] n n d j J n (x), d j I n (x) Deuflhard j= j=.1

More information

FFTSS Library Version 3.0 User's Guide

FFTSS Library Version 3.0 User's Guide : 19 10 31 FFTSS 3.0 Copyright (C) 2002-2007 The Scalable Software Infrastructure Project, (CREST),,. http://www.ssisc.org/ Contents 1 4 2 (DFT) 4 3 4 3.1 UNIX............................................

More information

64bit SSE2 SSE2 FPU Visual C++ 64bit Inline Assembler 4 FPU SSE2 4.1 FPU Control Word FPU 16bit R R R IC RC(2) PC(2) R R PM UM OM ZM DM IM R: reserved

64bit SSE2 SSE2 FPU Visual C++ 64bit Inline Assembler 4 FPU SSE2 4.1 FPU Control Word FPU 16bit R R R IC RC(2) PC(2) R R PM UM OM ZM DM IM R: reserved (Version: 2013/5/16) Intel CPU ([email protected]) 1 Intel CPU( AMD CPU) 64bit SIMD Inline Assemler Windows Visual C++ Linux gcc 2 FPU SSE2 Intel CPU double 8087 FPU (floating point number processing unit)

More information

ex01.dvi

ex01.dvi ,. 0. 0.0. C () /******************************* * $Id: ex_0_0.c,v.2 2006-04-0 3:37:00+09 naito Exp $ * * 0. 0.0 *******************************/ #include int main(int argc, char **argv) { double

More information

J.JSSAC Vol. 7, No. 2, Mathematica Maple,., Open asir Open xxx asir. Open xxx Open asir, asir., Open xxx, Linux Open asir Open sm1 (kan/sm1). C

J.JSSAC Vol. 7, No. 2, Mathematica Maple,., Open asir Open xxx asir. Open xxx Open asir, asir., Open xxx, Linux Open asir Open sm1 (kan/sm1). C J.JSSAC (1999) Vol. 7, No. 2, pp. 2-17 Open asir HPC (Received 1997/12/1) 1 Open asir Open xxx,., ( ),,,,,.,., (1) (2) (3) (4),. Open xxx,.,., 1.,.,., 0 10, dx,.,., [email protected] [email protected]

More information

b 2

b 2 3-086-505-01(1) JP USB / MSAC-US30 b 2 MSAC-US30 3 VCCI B Program 2000-2003 Sony Corporation Documentation 2003 Sony Corporation OpenMG SonicStage Memory Stick MagicGate Memory Stick Memory Stick PRO PRO

More information

OpenCV Windows(cygwin) Linux USB PC [1] Inel OpenCV OpenCV 1 Windows Linux OpenCV (a) (b)2 (c) (d) 1: OpenCV 1

OpenCV Windows(cygwin) Linux USB PC [1] Inel OpenCV OpenCV 1 Windows Linux OpenCV (a) (b)2 (c) (d) 1: OpenCV 1 OpenCV Windows(cygwin) Linux 20 2 8 1 USB PC [1] Inel OpenCV OpenCV 1 Windows Linux OpenCV (a) (b)2 (c) (d) 1: OpenCV 1 2 PC PC 1: PC PC PC dynabook SS OS Windows XP Professional Version.2002 ServicePack2

More information

ex01.dvi

ex01.dvi ,. 0. 0.0. C () /******************************* * $Id: ex_0_0.c,v.2 2006-04-0 3:37:00+09 naito Exp $ * * 0. 0.0 *******************************/ #include int main(int argc, char **argv) double

More information

07-二村幸孝・出口大輔.indd

07-二村幸孝・出口大輔.indd GPU Graphics Processing Units HPC High Performance Computing GPU GPGPU General-Purpose computation on GPU CPU GPU GPU *1 Intel Quad-Core Xeon E5472 3.0 GHz 2 6 MB L2 cache 1600 MHz FSB 80 GFlops 1 nvidia

More information

58 7 MPI 7 : main(int argc, char *argv[]) 8 : { 9 : int num_procs, myrank; 10 : double a, b; 11 : int tag = 0; 12 : MPI_Status status; 13 : 1 MPI_Init

58 7 MPI 7 : main(int argc, char *argv[]) 8 : { 9 : int num_procs, myrank; 10 : double a, b; 11 : int tag = 0; 12 : MPI_Status status; 13 : 1 MPI_Init 57 7 MPI MPI 1 1 7.1 Bcast( ) allocate Bcast a=1 PE0 a=1 PE1 a=1 PE2 a=1 PE3 7.1: Bcast 58 7 MPI 7 : main(int argc, char *argv[]) 8 : { 9 : int num_procs, myrank; 10 : double a, b; 11 : int tag = 0; 12

More information

64bit SSE2 SSE2 FPU Visual C++ 64bit Inline Assembler 4 FPU SSE2 4.1 FPU Control Word FPU 16bit R R R IC RC(2) PC(2) R R PM UM OM ZM DM IM R: reserved

64bit SSE2 SSE2 FPU Visual C++ 64bit Inline Assembler 4 FPU SSE2 4.1 FPU Control Word FPU 16bit R R R IC RC(2) PC(2) R R PM UM OM ZM DM IM R: reserved (Version: 2013/7/10) Intel CPU ([email protected]) 1 Intel CPU( AMD CPU) 64bit SIMD Inline Assemler Windows Visual C++ Linux gcc 2 FPU SSE2 Intel CPU double 8087 FPU (floating point number processing unit)

More information

Second-semi.PDF

Second-semi.PDF PC 2000 2 18 2 HPC Agenda PC Linux OS UNIX OS Linux Linux OS HPC 1 1CPU CPU Beowulf PC (PC) PC CPU(Pentium ) Beowulf: NASA Tomas Sterling Donald Becker 2 (PC ) Beowulf PC!! Linux Cluster (1) Level 1:

More information

RedHat OpenFOAM OpenFOAM ver 2.3 RedHat(RHEL)

RedHat OpenFOAM OpenFOAM ver 2.3 RedHat(RHEL) RedHat Linux OpenFOAM (OpenFOAM 2.2.x, 2.3.x) y.imagawa 14.3.8 RedHat OpenFOAM OpenFOAM ver 2.3 RedHat(RHEL) OpenFOAM OpenFOAM Linux git Repository RedHat Linux OpenFOAM centfoam? OpenFOAM OS CentOS 6.5

More information

Untitled

Untitled VASP 2703 2006 3 VASP 100 PC 3,4 VASP VASP VASP FFT. (LAPACK,BLAS,FFT), CPU VASP. 1 C LAPACK,BLAS VASP VASP VASP VASP bench.hg VASP CPU CPU CPU northwood LAPACK lmkl lapack64, BLAS lmkl p4 LA- PACK liblapack,

More information

106 4 4.1 1 25.1 25.4 20.4 17.9 21.2 23.1 26.2 1 24 12 14 18 36 42 24 10 5 15 120 30 15 20 10 25 35 20 18 30 12 4.1 7 min. z = 602.5x 1 + 305.0x 2 + 2

106 4 4.1 1 25.1 25.4 20.4 17.9 21.2 23.1 26.2 1 24 12 14 18 36 42 24 10 5 15 120 30 15 20 10 25 35 20 18 30 12 4.1 7 min. z = 602.5x 1 + 305.0x 2 + 2 105 4 0 1? 1 LP 0 1 4.1 4.1.1 (intger programming problem) 1 0.5 x 1 = 447.7 448 / / 2 1.1.2 1. 2. 1000 3. 40 4. 20 106 4 4.1 1 25.1 25.4 20.4 17.9 21.2 23.1 26.2 1 24 12 14 18 36 42 24 10 5 15 120 30

More information

/* sansu1.c */ #include <stdio.h> main() { int a, b, c; /* a, b, c */ a = 200; b = 1300; /* a 200 */ /* b 200 */ c = a + b; /* a b c */ }

/* sansu1.c */ #include <stdio.h> main() { int a, b, c; /* a, b, c */ a = 200; b = 1300; /* a 200 */ /* b 200 */ c = a + b; /* a b c */ } C 2: A Pedestrian Approach to the C Programming Language 2 2-1 2.1........................... 2-1 2.1.1.............................. 2-1 2.1.2......... 2-4 2.1.3..................................... 2-6

More information

VNSTProductDes3.0-1_jp.pdf

VNSTProductDes3.0-1_jp.pdf Visual Nexus Secure Transport 2005/10/18 Visual Nexus http:// www.visualnexus.com/jp/support.htm Visual Nexus Secure Transport 2005/02/25 1 2005/10/18 Ver3.0-1 2005 10 18 108-0075 21119 2 Visual Nexus

More information

14 2 Scilab Scilab GUI インタグラフ プリタ描画各種ライブラリ (LAPACK, ODEPACK, ) SciNOTES ハードウェア (CPU, GPU) 21 Scilab SciNotes 呼び出し 3 変数ブラウザ 1 ファイルブラウザ 2 コンソール 4 コマンド履歴

14 2 Scilab Scilab GUI インタグラフ プリタ描画各種ライブラリ (LAPACK, ODEPACK, ) SciNOTES ハードウェア (CPU, GPU) 21 Scilab SciNotes 呼び出し 3 変数ブラウザ 1 ファイルブラウザ 2 コンソール 4 コマンド履歴 13 2 Scilab Scilab Scilab 21 Scilab Scilab[4] INRIA C/C++, Fortran LAPACK Matlab Scilab Web http://wwwscilaborg/ 2016 4 552 Windows 10/8x MacOS X, Linux Scilab Octave Matlab (Matlab Toolbox) (Mathematica

More information

(300, 150) 120 getchar() HgBox(x, y, w, h) (x, y), w, h #include <stdio.h> #include <handy.h> int main(void) { int i; double w, h; } HgO

(300, 150) 120 getchar() HgBox(x, y, w, h) (x, y), w, h #include <stdio.h> #include <handy.h> int main(void) { int i; double w, h; } HgO Handy Graphic for Handy Graphic Version 0.5 2008-06-09 1 Handy Graphic Handy Graphic C Handy Graphic Handy Graphic Mac OS X Handy Graphic HgDisplayer Handy Graphic HgDisplayer 2 Handy Graphic 1 Handy Graphic

More information

θ (t) ω cos θ(t) = ( : θ, θ. ( ) ( ) ( 5) l () θ (t) = ω sin θ(t). ω := g l.. () θ (t) θ (t)θ (t) + ω θ (t) sin θ(t) =. [ ] d dt θ (t) ω cos θ(t

θ (t) ω cos θ(t) = ( : θ, θ. ( ) ( ) ( 5) l () θ (t) = ω sin θ(t). ω := g l.. () θ (t) θ (t)θ (t) + ω θ (t) sin θ(t) =. [ ] d dt θ (t) ω cos θ(t 7 8, /3/, 5// http://nalab.mind.meiji.ac.jp/~mk/labo/text/furiko/ l (, simple pendulum) m g mlθ (t) = mg sin θ(t) () θ (t) + ω sin θ(t) =, ω := ( m ) ( θ ) sin θ θ θ (t) + ω θ(t) = ( ) ( ) g l θ(t) = C

More information

iphone GPGPU GPU OpenCL Mac OS X Snow LeopardOpenCL iphone OpenCL OpenCL NVIDIA GPU CUDA GPU GPU GPU 15 GPU GPU CPU GPU iii OpenMP MPI CPU OpenCL CUDA OpenCL CPU OpenCL GPU NVIDIA Fermi GPU Fermi GPU GPU

More information

DKA ( 1) 1 n i=1 α i c n 1 = 0 ( 1) 2 n i 1 <i 2 α i1 α i2 c n 2 = 0 ( 1) 3 n i 1 <i 2 <i 3 α i1 α i2 α i3 c n 3 = 0. ( 1) n 1 n i 1 <i 2 < <i

DKA ( 1) 1 n i=1 α i c n 1 = 0 ( 1) 2 n i 1 <i 2 α i1 α i2 c n 2 = 0 ( 1) 3 n i 1 <i 2 <i 3 α i1 α i2 α i3 c n 3 = 0. ( 1) n 1 n i 1 <i 2 < <i 149 11 DKA IEEE754 11.1 DKA n p(x) = a n x n + a n 1 x n 1 + + a 0 (11.1) p(x) = 0 (11.2) p n (x) q n (x) = x n + c n 1 x n 1 + + c 1 x + c 0 q n (x) = 0 (11.3) c i = a i a n (i = 0, 1,..., n 1) (11.3)

More information

Source: Intel.Config: Pentium III Processor-Intel Seattle SE440BX-2, 128MB PC100 CL2 SDRAM Intel 440BX-2 Chipset Platform- Diamond Viper 550 /

Source: Intel.Config: Pentium III Processor-Intel Seattle SE440BX-2, 128MB PC100 CL2 SDRAM Intel 440BX-2 Chipset Platform- Diamond Viper 550 / 2002.1 4 1 2 3 Source: Intel.Config: Pentium III Processor-Intel Seattle SE440BX-2, 128MB PC100 CL2 SDRAM Intel 440BX-2 Chipset Platform- Diamond Viper 550 / nvidia TNT 2x AGP with 16MB memory, nvidia

More information

ストリーミング SIMD 拡張命令2 (SSE2) を使用した SAXPY/DAXPY

ストリーミング SIMD 拡張命令2 (SSE2) を使用した SAXPY/DAXPY SIMD 2(SSE2) SAXPY/DAXPY 2.0 2000 7 : 248600J-001 01/12/06 1 305-8603 115 Fax: 0120-47-8832 * Copyright Intel Corporation 1999, 2000 01/12/06 2 1...5 2 SAXPY DAXPY...5 2.1 SAXPY DAXPY...6 2.1.1 SIMD C++...6

More information

untitled

untitled II yacc 005 : 1, 1 1 1 %{ int lineno=0; 3 int wordno=0; 4 int charno=0; 5 6 %} 7 8 %% 9 [ \t]+ { charno+=strlen(yytext); } 10 "\n" { lineno++; charno++; } 11 [^ \t\n]+ { wordno++; charno+=strlen(yytext);}

More information

新版明解C言語 実践編

新版明解C言語 実践編 2 List - "max.h" a, b max List - max "max.h" #define max(a, b) ((a) > (b)? (a) : (b)) max List -2 List -2 max #include "max.h" int x, y; printf("x"); printf("y"); scanf("%d", &x); scanf("%d", &y); printf("max(x,

More information

-1-1 1 1 1 1 12 31 2 2 3 4

-1-1 1 1 1 1 12 31 2 2 3 4 2007 -1-1 1 1 1 1 12 31 2 2 3 4 -2-5 6 CPU 3 Windows98 1 -3-2. 3. -4-4 2 5 1 1 1 -5- 50000 50000 50000 50000 50000 50000 50000 50000 50000 50000-6- -7-1 Windows 2 -8-1 2 3 4 - - 100,000 200,000 500,000

More information

新版 明解C++入門編

新版 明解C++入門編 第 1 章画面 出力 入力 C++ C++ C++ C++ C++ C++ C++ C++ #include using C++ C++ C++ main C++ C++ C++ int double char C++ C++ C++ string C++ C++ C++ 21 1-1 C++ 歴史 C++ C++ 歴史 CC with classes Fig.1-1 C C++ Simula 67

More information

FileMaker Server Getting Started Guide

FileMaker Server Getting Started Guide FileMaker Server 11 2004-2010 FileMaker, Inc. All Rights Reserved. FileMaker, Inc. 5201 Patrick Henry Drive Santa Clara, California 95054 FileMaker FileMaker, Inc. FileMaker, Inc. FileMaker FileMaker,

More information

DVD CD SoundRipper SoundRipper DVD SoundRipper DVD SoundRipper DVD CD DVD DVD DVD CD CD DVD " CD/DVD" DVD CSS DVD SoundRipper DVD-Video DVD DVD-ROM DV

DVD CD SoundRipper SoundRipper DVD SoundRipper DVD SoundRipper DVD CD DVD DVD DVD CD CD DVD  CD/DVD DVD CSS DVD SoundRipper DVD-Video DVD DVD-ROM DV SoundRipper 2 SoundRipper 5 SoundRipper 9 DVD 12 16 CD 25 CD 31 35 SoundRipper 38 FAQ 40 42 1 DVD CD SoundRipper SoundRipper DVD SoundRipper DVD SoundRipper DVD CD DVD DVD DVD CD CD DVD " CD/DVD" DVD CSS

More information

EPSON EasyMP Multi PC Projection Ver.1.11 Operation Guide

EPSON EasyMP Multi PC Projection Ver.1.11 Operation Guide EasyMP Multi PC Projection EasyMP Multi PC Projection EasyMP Multi PC Projection... 5...5...5... 6...6...6... 9... 14... 14... 14... 15 EasyMP Multi PC Projection...15...16...17... 17... 18...18...19...20...

More information

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v

/* do-while */ #include <stdio.h> #include <math.h> int main(void) double val1, val2, arith_mean, geo_mean; printf( \n ); do printf( ); scanf( %lf, &v 1 http://www7.bpe.es.osaka-u.ac.jp/~kota/classes/jse.html [email protected] /* do-while */ #include #include int main(void) double val1, val2, arith_mean, geo_mean; printf( \n );

More information

SQUFOF NTT Shanks SQUFOF SQUFOF Pentium III Pentium 4 SQUFOF 2.03 (Pentium 4 2.0GHz Willamette) N UBASIC 50 / 200 [

SQUFOF NTT Shanks SQUFOF SQUFOF Pentium III Pentium 4 SQUFOF 2.03 (Pentium 4 2.0GHz Willamette) N UBASIC 50 / 200 [ SQUFOF SQUFOF NTT 2003 2 17 16 60 Shanks SQUFOF SQUFOF Pentium III Pentium 4 SQUFOF 2.03 (Pentium 4 2.0GHz Willamette) 60 1 1.1 N 62 16 24 UBASIC 50 / 200 [ 01] 4 large prime 943 2 1 (%) 57 146 146 15

More information

[1] #include<stdio.h> main() { printf("hello, world."); return 0; } (G1) int long int float ± ±

[1] #include<stdio.h> main() { printf(hello, world.); return 0; } (G1) int long int float ± ± [1] #include printf("hello, world."); (G1) int -32768 32767 long int -2147483648 2147483647 float ±3.4 10 38 ±3.4 10 38 double ±1.7 10 308 ±1.7 10 308 char [2] #include int a, b, c, d,

More information

211 年ハイパフォーマンスコンピューティングと計算科学シンポジウム Computing Symposium 211 HPCS /1/18 a a 1 a 2 a 3 a a GPU Graphics Processing Unit GPU CPU GPU GPGPU G

211 年ハイパフォーマンスコンピューティングと計算科学シンポジウム Computing Symposium 211 HPCS /1/18 a a 1 a 2 a 3 a a GPU Graphics Processing Unit GPU CPU GPU GPGPU G 211 年ハイパフォーマンスコンピューティングと計算科学シンポジウム Computing Symposium 211 HPCS211 211/1/18 GPU 4 8 BLAS 4 8 BLAS Basic Linear Algebra Subprograms GPU Graphics Processing Unit 4 8 double 2 4 double-double DD 4 4 8 quad-double

More information

3.1 stdio.h iostream List.2 using namespace std C printf ( ) %d %f %s %d C++ cout cout List.2 Hello World! cout << float a = 1.2f; int b = 3; cout <<

3.1 stdio.h iostream List.2 using namespace std C printf ( ) %d %f %s %d C++ cout cout List.2 Hello World! cout << float a = 1.2f; int b = 3; cout << C++ C C++ 1 C++ C++ C C++ C C++? C C++ C *.c *.cpp C cpp VC C++ 2 C++ C++ C++ [1], C++,,1999 [2],,,2001 [3], ( )( ),,2001 [4] B.W. /D.M.,, C,,1989 C Web [5], http://kumei.ne.jp/c_lang/ 3 Hello World Hello

More information

DPD Software Development Products Overview

DPD Software Development Products Overview 2 2007 Intel Corporation. Core 2 Core 2 Duo 2006/07/27 Core 2 precise VTune Core 2 Quad 2006/11/14 VTune Core 2 ( ) 1 David Levinthal 3 2007 Intel Corporation. PC Core 2 Extreme QX6800 2.93GHz, 1066MHz

More information

1 4 1.1........................................... 4 1.2.................................. 4 1.3................................... 4 2 5 2.1 GPU.....

1 4 1.1........................................... 4 1.2.................................. 4 1.3................................... 4 2 5 2.1 GPU..... CPU GPU N Q07-065 2011 2 17 1 1 4 1.1........................................... 4 1.2.................................. 4 1.3................................... 4 2 5 2.1 GPU...........................................

More information

mate10„”„õŒì4

mate10„”„õŒì4 2002.10 1 2 3 4 2 LINE UP 31w 79w 3 4 LINE UP Windows XP Windows 98 Pentium 1.70GHz Pentium 1.80GHz Pentium 2A GHz Pentium 2.40GHz Pentium 2.53GHz 0 50 100 150 200 250 Processor:Pentium 4 processor 1.50

More information

2.2 Sage I 11 factor Sage Sage exit quit 1 sage : exit 2 Exiting Sage ( CPU time 0m0.06s, Wall time 2m8.71 s). 2.2 Sage Python Sage 1. Sage.sage 2. sa

2.2 Sage I 11 factor Sage Sage exit quit 1 sage : exit 2 Exiting Sage ( CPU time 0m0.06s, Wall time 2m8.71 s). 2.2 Sage Python Sage 1. Sage.sage 2. sa I 2017 11 1 SageMath SageMath( Sage ) Sage Python Sage Python Sage Maxima Maxima Sage Sage Sage Linux, Mac, Windows *1 2 Sage Sage 4 1. ( sage CUI) 2. Sage ( sage.sage ) 3. Sage ( notebook() ) 4. Sage

More information

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D

II ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 D II 8 2003 11 12 1 6 ( ) prog8-1.c s1542h017%./prog8-1 1 => 35 Hiroshi 2 => 23 Koji 3 => 67 Satoshi 4 => 87 Junko 5 => 64 Ichiro 6 => 89 Mari 7 => 73 Daisuke 8 =>. 73 Daisuke 35 Hiroshi 64 Ichiro 87 Junko

More information

01_OpenMP_osx.indd

01_OpenMP_osx.indd OpenMP* / 1 1... 2 2... 3 3... 5 4... 7 5... 9 5.1... 9 5.2 OpenMP* API... 13 6... 17 7... 19 / 4 1 2 C/C++ OpenMP* 3 Fortran OpenMP* 4 PC 1 1 9.0 Linux* Windows* Xeon Itanium OS 1 2 2 WEB OS OS OS 1 OS

More information

PC Link Tool PC Link Tool PC Link Tool PC Link Tool

PC Link Tool PC Link Tool PC Link Tool PC Link Tool Ver. 1.04 ... 3 1.... 3 1.1. PC Link Tool... 3 1.2. PC Link Tool... 4 1.3.... 4 2.... 5 2.1.... 5 2.2. PC Link Tool... 6 2.3. PC Link Tool... 7 3....11 3.1.... 11 3.2.... 13 3.3.... 14 3.4.... 19 3.5....

More information

C 2 / 21 1 y = x 1.1 lagrange.c 1 / Laglange / 2 #include <stdio.h> 3 #include <math.h> 4 int main() 5 { 6 float x[10], y[10]; 7 float xx, pn, p; 8 in

C 2 / 21 1 y = x 1.1 lagrange.c 1 / Laglange / 2 #include <stdio.h> 3 #include <math.h> 4 int main() 5 { 6 float x[10], y[10]; 7 float xx, pn, p; 8 in C 1 / 21 C 2005 A * 1 2 1.1......................................... 2 1.2 *.......................................... 3 2 4 2.1.............................................. 4 2.2..............................................

More information

EPSON Easy Interactive Tools Ver.2 Operation Guide

EPSON Easy Interactive Tools Ver.2 Operation Guide Easy Interactive Tools Ver.2 Easy Interactive Tools Ver.2 Easy Interactive Tools Easy Interactive Tools s p.10 Mac OS XEasy Interactive Driver Ver.2.XX s Easy Interactive Pen s p.7 2 2Easy Interactive

More information

Microsoft Word - C.....u.K...doc

Microsoft Word - C.....u.K...doc C uwêííôöðöõ Ð C ÔÖÐÖÕ ÐÊÉÌÊ C ÔÖÐÖÕÊ C ÔÖÐÖÕÊ Ç Ê Æ ~ if eíè ~ for ÒÑÒ ÌÆÊÉÉÊ ~ switch ÉeÍÈ ~ while ÒÑÒ ÊÍÍÔÖÐÖÕÊ ~ 1 C ÔÖÐÖÕ ÐÊÉÌÊ uê~ ÏÒÏÑ Ð ÓÏÖ CUI Ô ÑÊ ÏÒÏÑ ÔÖÐÖÕÎ d ÈÍÉÇÊ ÆÒ Ö ÒÐÑÒ ÊÔÎÏÖÎ d ÉÇÍÊ

More information

double float

double float 2015 3 13 1 2 2 3 2.1.......................... 3 2.2............................. 3 3 4 3.1............................... 4 3.2 double float......................... 5 3.3 main.......................

More information

EPSON EasyMP Multi PC Projection Ver.1.10 Operation Guide

EPSON EasyMP Multi PC Projection Ver.1.10 Operation Guide EasyMP Multi PC Projection EasyMP Multi PC Projection EasyMP Multi PC Projection... 5...5...5... 6...6...6... 9... 14... 14... 14... 15 EasyMP Multi PC Projection...15...16...17... 17... 18...18...19...20...

More information

ARM gcc Kunihiko IMAI 2009 1 11 ARM gcc 1 2 2 2 3 3 4 3 4.1................................. 3 4.2............................................ 4 4.3........................................

More information

HP xw9400 Workstation

HP xw9400 Workstation HP xw9400 Workstation HP xw9400 Workstation AMD Opteron TM PCI Express x16 64 PCI Express x16 2 USB2.0 8 IEEE1394 2 8DIMM HP HP xw9400 Workstation HP CPU HP CPU 240W CPU HP xw9400 HP CPU CPU CPU CPU Sound

More information

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU

PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU 1. 1.1. 1.2. 1 PC Windows 95, Windows 98, Windows NT, Windows 2000, MS-DOS, UNIX CPU 2. 2.1. 2 1 2 C a b N: PC BC c 3C ac b 3 4 a F7 b Y c 6 5 a ctrl+f5) 4 2.2. main 2.3. main 2.4. 3 4 5 6 7 printf printf

More information

DPCK-US10

DPCK-US10 3-064-500-02(1) DPCK-US10 2000 Sony Corporation DPCK-US10 USB MGI PhotoSuite MGI PhotoSuite PhotoSuite V8.1 Windows ) VideoWave SE+ Windows PhotoSuite SE V1.1(Macintosh ) DPCK-US10 USB USB MGI PhotoSuite

More information

VM-53PA1取扱説明書

VM-53PA1取扱説明書 VM-53PA1 VM-53PA1 VM-53 VM-53A VM-52 VM-52A VM-53PA1 VM-53PA1 VM-53A CF i ii VM-53 VM-53A VM-52 VM-52A CD-ROM iii VM-53PA1 Microsoft Windows 98SE operating system Microsoft Windows 2000 operating system

More information

SonicStage Ver. 2.0

SonicStage Ver. 2.0 3-263-346-01(1) SonicStage Ver. 2.0 SonicStage SonicStage 2004 Sony Corporation Windows SonicStage OpenMG Net MD ATRAC ATRAC3 ATRAC3plus Microsoft Windows Windows NT Windows Media Microsoft Corporation

More information

( CUDA CUDA CUDA CUDA ( NVIDIA CUDA I

(    CUDA CUDA CUDA CUDA (  NVIDIA CUDA I GPGPU (II) GPGPU CUDA 1 GPGPU CUDA(CUDA Unified Device Architecture) CUDA NVIDIA GPU *1 C/C++ (nvcc) CUDA NVIDIA GPU GPU CUDA CUDA 1 CUDA CUDA 2 CUDA NVIDIA GPU PC Windows Linux MaxOSX CUDA GPU CUDA NVIDIA

More information

pptx

pptx iphone 2010 8 18 C [email protected] C Hello, World! Hello World hello.c! printf( Hello, World!\n );! os> ls! hello.c! os> cc hello.c o hello! os> ls! hello!!hello.c! os>./hello! Hello, World!! os>! os>

More information

EPSON EasyMP Multi PC Projection Ver.1.00 Operation Guide

EPSON EasyMP Multi PC Projection Ver.1.00 Operation Guide EasyMP Multi PC Projection EasyMP Multi PC Projection EasyMP Multi PC Projection... 5...5...5... 6...6...6... 9... 14... 14... 14... 15 EasyMP Multi PC Projection...15...16...17... 17... 18...18...19...20...

More information

ACDSee-Press-Release_0524

ACDSee-Press-Release_0524 ACDSee Pro Windows ACDSee Pro 4 Mac ACDSee Pro (Mac) 5 26 ACDSee 6 30 ACDSee 5,000 URL: http://www.acdsee.jp ACDSee Pro ACDSee Pro 4 16,800 / 21,800 ACDSee Pro (Mac) 9,800 / 14,800 ACDSee Pro 4 RAW ACDSee

More information