2011, Oracle / U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware

Size: px
Start display at page:

Download "2011, Oracle / U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware"

Transcription

1 Oracle Solaris Studio 12.3 OpenMP API E E

2 2011, Oracle / U.S. GOVERNMENT END USERS: Oracle programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, delivered to U.S. Government end users are commercial computer software pursuant to the applicable Federal Acquisition Regulation and agency-specific supplemental regulations. As such, use, duplication, disclosure, modification, and adaptation of the programs, including any operating system, integrated software, any programs installed on the hardware, and/or documentation, shall be subject to license terms and license restrictions applicable to the programs. No other rights are granted to the U.S. Government. Oracle Corporation Oracle Java Oracle / Intel Intel Xeon Intel Corporation SPARC SPARC International, Inc AMD Opteron AMD AMD Opteron Advanced Micro Devices UNIX The Open Group Oracle Corporation Oracle Corporation @25097

3 OpenMP API OpenMP OpenMP OpenMP OpenMP Oracle Solaris Studio ID SUNW_MP_PROCBIND OS OpenMP SECTIONS SINGLE

4 3.6.3 ATOMIC omp_set_num_threads() omp_set_schedule() omp_set_max_active_levels() omp_get_max_active_levels() Fortran THREADPRIVATE SHARED OMP_NESTED OMP_THREAD_LIMIT OMP_MAX_ACTIVE_LEVELS OpenMP THREADPRIVATE auto default( auto) Oracle Solaris Studio 12.3 OpenMP API E

5 Oracle Solaris OS A

6 6

7 Oracle Solaris Studio 12.3 C C++ Fortran OpenMP API Oracle Solaris Studio Oracle Solaris SPARC Oracle Solaris Linux x86 x86 "x86" x86 "x64" 64 x86 CPU 32 x86 x86 32 SPARC x86 Linux Linux x86 Oracle Solaris Oracle Solaris Oracle Solaris Studio 12.3 Oracle Solaris Studio Oracle Solaris Studio Oracle Solaris Studio Web dbxtool DLight IDE "Help" F1 "Help" 7

8 Web URL Oracle Web Oracle Oracle Oracle Oracle Solaris Studio Oracle Web Oracle My Oracle Support pls/topic/lookup?ctx=acc&id=trs P 1 AaBbCc123.login ls -a machine_name% you have mail. AaBbCc123 machine_name% su Password: 8 Oracle Solaris Studio 12.3 OpenMP API E

9 P 1 aabbcc123 rm filename AaBbCc123 Class 6 shell Oracle Solaris OS UNIX shell Oracle Solaris P 2 shell shell Bash shell Korn shell Bourne shell $ Bash shell Korn shell Bourne shell # C shell C shell machine_name% machine_name# 9

10 10

11 1 1 OpenMP API OpenMP (Application Program Interface, API) OpenMP OpenMP API Oracle Solaris Oracle Solaris Studio 1.1 OpenMP OpenMP 3.1 API Oracle Solaris Studio OpenMP Web OpenMP compunity Web Oracle Solaris Studio OpenMP API Oracle Solaris Studio solarisstudio 1.2 Fortran Fortran C/C++ [...] "Fortran" Fortran 95 Oracle Solaris Studio f95(1) 11

12 1.2 "pragma" OpenMP API C C++ Fortran 12 Oracle Solaris Studio 12.3 OpenMP API E

13 2 OpenMP OpenMP API Oracle Solaris Studio 12.3 OpenMP 2 1 OMP_NUM_THREADS omp_set_num_threads() PARALLEL num_threads 2.1 OpenMP cc CC f95 -xopenmp f95 -xopenmp -openmp -xopenmp -xopenmp=parallel -xopenmp=noopt OpenMP pragma -xopenmp=parallel -xo3 -xo3 OpenMP pragma -xo3 -xo3 -xo2 -openmp=noopt -openmp=noopt OpenMP pragma 13

14 2.1 -xopenmp=stubs -xopenmp=none OpenMP OpenMP OpenMP OpenMP pragma -xopenmp libompstubs.a % cc omp_ignore.c -lompstubs libompstubs.a OpenMP libmtsk.so OpenMP pragma Oracle Solaris OpenMP libmtsk.so xopenmp xopenmp=none OpenMP pragma xopenmp xopenmp=parallel -xopenmp=parallel noopt _OPENMP YYYYMM C/C L Fortran dbx OpenMP -xopenmp=noopt -g -xopenmp Fortran 95 -xopenmp -xopenmp=parallel -xopenmp=noopt -stackvar OpenMP -xopenmp xopenmp, xopenmp=parallel xopenmp=noopt xvpara OpenMP 6 7 OpenMP OpenMP OpenMP shared private 14 Oracle Solaris Studio 12.3 OpenMP API E

15 2.2 OpenMP 2.2 OpenMP OpenMP OpenMP OpenMP API 3.1 Oracle Solaris Studio OpenMP Oracle Solaris Studio OpenMP Oracle Solaris Studio OpenMP OpenMP OMP_SCHEDULE STATIC OMP_NUM_THREADS OMP_DYNAMIC OMP_NESTED OMP_STACKSIZE OMP_WAIT_POLICY OMP_MAX_ACTIVE_LEVELS OMP_THREAD_LIMIT OMP_PROC_BIND setenv OMP_SCHEDULE GUIDED,4 2 setenv OMP_NUM_THREADS 16 TRUE setenv OMP_DYNAMIC FALSE FALSE setenv OMP_NESTED FALSE 32 4MB 64 8MB setenv OMP_STACKSIZE 10M PASSIVE FALSE Oracle Solaris Studio OpenMP OpenMP 2 OpenMP 15

16 2.2 OpenMP PARALLEL PARALLEL OMP_NUM_THREADS PARALLEL OMP_NUM_THREADS SUNW_MP_WARN OpenMP SUNW_MP_WARN TRUE stderr FALSE FALSE setenv SUNW_MP_WARN TRUE int sunw_mp_register_warn (void (*func)(void *)); sunw_mp_register_warn() 0 1 OpenMP OpenMP SUNW_MP_WARN TRUE OpenMP SUNW_MP_THR_IDLE OpenMP SPIN SLEEP SLEEP(times) SLEEP(timems) SLEEP(timemc) time s ms mc SPIN SLEEP SLEEP SLEEP SLEEP(0) SLEEP(0s) SLEEP(0ms) SLEEP(0mc) 16 Oracle Solaris Studio 12.3 OpenMP API E

17 2.2 OpenMP SUNW_MP_THR_IDLE OMP_WAIT_POLICY OMP_WAIT_POLICY setenv SUNW_MP_THR_IDLE SPIN setenv SUNW_MP_THR_IDLE SLEEP setenv SUNW_MP_THR_IDLE SLEEP(2s) setenv SUNW_MP_THR_IDLE SLEEP(20ms) setenv SUNW_MP_THR_IDLE SLEEP(150mc) SUNW_MP_PROCBIND Oracle Solaris Linux SUNW_MP_PROCBIND OpenMP SUNW_MP_PROCBIND OMP_PROC_BIND SUNW_MP_MAX_POOL_THREADS OpenMP SUNW_MP_MAX_POOL_THREADS OpenMP OMP_THREAD_LIMIT OpenMP SUNW_MP_MAX_POOL_THREADS OMP_THREAD_LIMIT OMP_THREAD_LIMIT SUNW_MP_MAX_POOL_THREADS SUNW_MP_MAX_NESTED_LEVELS STACKSIZE SUNW_MP_MAX_NESTED_LEVELS SUNW_MP_MAX_NESTED_LEVELS OMP_MAX_ACTIVE_LEVELS 32 SPARC V8 x86 4MB 64 SPARC V9 x86 8MB 2 OpenMP 17

18 2.2 OpenMP STACKSIZE B, K, M G setenv STACKSIZE 8192 // sets the thread stack size to 8 Megabytes setenv STACKSIZE 16M // sets the thread stack size to 16 Megabytes STACKSIZE OMP_STACKSIZE SUNW_MP_GUIDED_WEIGHT GUIDED GUIDED SUNW_MP_WAIT_POLICY CPU csh setenv SUNW_MP_WAIT_POLICY IDLE=val :BARRIER=val:TASKWAIT= val IDLE=val BARRIER= val TASKWAIT= val val SPIN YIELD SLEEP SPIN(time) CPU time s ms mc SPIN YIELD(number) CPU CPU YIELD number SLEEP SPIN SLEEP YIELD "SPIN(0),YIELD(0)" SLEEP IDLE BARRIER TASKWAIT SUNW_MP_WAIT_POLICY OMP_WAIT_POLICY OMP_WAIT_POLICY 18 Oracle Solaris Studio 12.3 OpenMP API E

19 2.3 % setenv SUNW_MP_WAIT_POLICY BARRIER=SPIN % setenv SUNW_MP_WAIT_POLICY IDLE=SPIN(10ms),YIELD(5) 10 CPU 5 % setenv SUNW_MP_WAIT_POLICY \ IDLE=SPIN(10ms),YIELD(2):BARRIER=SLEEP:TASKWAIT=YIELD(10) 10 CPU 2 CPU n n SPARC T3 Oracle Solaris 64 Oracle Solaris psrinfo(1m) Linux /proc/cpuinfo SUNW_MP_PROCBIND OpenMP SUNW_MP_PROCBIND "TRUE" "FALSE" "COMPACT" "SCATTER" "true" "false" "compact" "scatter" % setenv SUNW_MP_PROCBIND "TRUE" 2 OpenMP 19

20 2.3 % setenv SUNW_MP_PROCBIND "2" % setenv SUNW_MP_PROCBIND "2 246" n1 n2 ("-") n1 n2 % setenv SUNW_MP_PROCBIND "0-6" (ID) ID ID ID ID Oracle Solaris psrinfo(1m) ID prtdiag(1m) psrinfo -pv ID 8 UltraSPARC IV 16 Sun Fire 4810 ID ID 0 n ID n-1 psrinfo(1m) SUNW_MP_PROCBIND SUNW_MP_PROCBIND SUNW_MP_PROCBIND SUNW_MP_PROCBIND FALSE SUNW_MP_PROCBIND TRUE SUNW_MP_PROCBIND COMPACT COMPACT SUNW_MP_PROCBIND SCATTER SCATTER COMPACT 20 Oracle Solaris Studio 12.3 OpenMP API E

21 2.4 SUNW_MP_PROCBIND ID ID ID n-1 ID 0 SUNW_MP_PROCBIND ID ID ID SUNW_MP_PROCBIND ("-") ID ID ID SUNW_MP_PROCBIND ID OpenMP OS Oracle Solaris psrset Linux taskset SUNW_MP_PROCBIND SUNW_MP_PROCBIND Linux SUNW_MP_PROCBIND Oracle Solaris 2.4 f95 -stackvar Fortran OpenMP -stackvar -stackvar Fortran limit C-shell ulimit Bourne Korn shell 8MB OpenMP PRIVATE 2 OpenMP 21

22 2.5 OpenMP 32 SPARC V8 x86 4MB 64 SPARC V9 x86 8MB OMP_STACKSIZE demo% setenv OMP_STACKSIZE <-Set thread stack size to 16 Mb (C shell) demo$ OMP_STACKSIZE=16384 demo$ export OMP_STACKSIZE <-Set thread stack size to 16 Mb (Bourne/Korn shell) -xcheck=stkovf Fortran C C OpenMP Oracle Solaris Studio OpenMP dbx dbx(1) tha(1) libtha(3) OpenMP collect(1) analyzer(1) 22 Oracle Solaris Studio 12.3 OpenMP API E

23 3 Oracle Solaris Studio OpenMP OpenMP 3.1 API E (untied) (tied) (untied) OpenMP (taskwait) (taskyield) (untied) load/store load/store 23

24 nthreads-var nthreads-var 1 dyn-var dyn-var TRUE run-sched-var run-sched-var static def-sched-var def-sched-var static bind-var bind-var FALSE stacksize-var OpenMP stacksize-var 4 MB 32 8MB 64 wait-policy-var wait-policy-var PASSIVE thread-limit-var OpenMP thread-limit-var 1024 max-active-levels-var max-active-levels-var OMP_DYNAMIC FALSE omp_set_dynamic() OpenMP SUNW_MP_WARN TRUE sunw_mp_register_warn() 3.5 (collapsed) long run-sched-var auto schedule(runtime) static 24 Oracle Solaris Studio 12.3 OpenMP API E

25 SECTIONS SINGLE ATOMIC 3.7 sections single critical atomic omp_set_num_threads() omp_set_num_threads() SUNW_MP_WARN TRUE sunw_mp_register_warn() omp_set_schedule() Oracle Solaris Studio sunw_mp_sched_reserved static omp_set_max_active_levels() omp_set_max_active_levels() SUNW_MP_WARN TRUE sunw_mp_register_warn() 3 25

26 3.8 omp_set_max_active_levels() SUNW_MP_WARN TRUE sunw_mp_register_warn() omp_get_max_active_levels() omp_get_max_active_levels() max-active-levels-var 3.8 OMP_SCHEDULE OMP_SCHEDULE static dynamic guided auto static SUNW_MP_WARN TRUE sunw_mp_register_warn() OMP_SCHEDULE static dynamic guided static dynamic guided 1 SUNW_MP_WARN TRUE sunw_mp_register_warn() OMP_NUM_THREADS SUNW_MP_WARN TRUE sunw_mp_register_warn() SUNW_MP_WARN TRUE sunw_mp_register_warn() OMP_PROC_BIND OMP_DYNAMIC OMP_NESTED OMP_PROC_BIND TRUE FALSE OMP_DYNAMIC TRUE FALSE TRUE SUNW_MP_WARN TRUE sunw_mp_register_warn() OMP_NESTED TRUE FALSE FALSE SUNW_MP_WARN TRUE sunw_mp_register_warn() 26 Oracle Solaris Studio 12.3 OpenMP API E

27 3.9 Fortran OMP_STACKSIZE OMP_WAIT_POLICY OMP_STACKSIZE 32 4MB 64 8MB SUNW_MP_WARN TRUE sunw_mp_register_warn() ACTIVE PASSIVE OMP_MAX_ACTIVE_LEVELS OMP_MAX_ACTIVE_LEVELS (4) SUNW_MP_WARN TRUE sunw_mp_register_warn() OMP_THREAD_LIMIT OMP_THREAD_LIMIT (1024) SUNW_MP_WARN TRUE sunw_mp_register_warn() 3.9 Fortran Fortran THREADPRIVATE (thread-private) SHARED OpenMP 3.1 shared 3 27

28 3.9 Fortran omp_lib.h omp_lib Oracle Solaris OpenMP Fortran KIND 28 Oracle Solaris Studio 12.3 OpenMP API E

29 4 4.1 OpenMP OpenMP fork-join - OpenMP OpenMP OMP_NESTED OMP_NESTED omp_set_nested() 29

30 #include <omp.h> #include <stdio.h> void report_num_threads(int level) #pragma omp single printf("level %d: number of threads in the team - %d\n", level, omp_get_num_threads()); int main() omp_set_dynamic(0); #pragma omp parallel num_threads(2) report_num_threads(1); #pragma omp parallel num_threads(2) report_num_threads(2); #pragma omp parallel num_threads(2) report_num_threads(3); return(0); % setenv OMP_NESTED TRUE % a.out Level 1: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 % setenv OMP_NESTED FALSE % a.out Level 1: number of threads in the team - 2 Level 2: number of threads in the team - 1 Level 3: number of threads in the team - 1 Level 2: number of threads in the team - 1 Level 3: number of threads in the team Oracle Solaris Studio 12.3 OpenMP API E

31 OMP_THREAD_LIMIT OpenMP OMP_THREAD_LIMIT 1023 OMP_THREAD_LIMIT 1 SUNW_MP_MAX_POOL_THREADS OMP_THREAD_LIMIT 6 SUNW_MP_MAX_POOL_THREADS 5 5 % setenv OMP_NESTED TRUE % OMP_THREAD_LIMIT 6 % a.out Level 1: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 1 Level 3: number of threads in the team OMP_MAX_ACTIVE_LEVELS OMP_MAX_ACTIVE_LEVELS 4 OMP_NESTED TRUE true omp_set_nested() 4 OMP_MAX_ACTIVE_LEVELS #include <omp.h> #include <stdio.h> #define DEPTH 5 void report_num_threads(int level) 4 31

32 4.2 #pragma omp single printf("level %d: number of threads in the team - %d\n", level, omp_get_num_threads()); void nested(int depth) if (depth == DEPTH) return; #pragma omp parallel num_threads(2) report_num_threads(depth); nested(depth+1); int main() omp_set_dynamic(0); omp_set_nested(1); nested(1); return(0); 4 OS % setenv OMP_MAX_ACTIVE_LEVELS 4 % a.out sort Level 1: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 3: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team - 2 Level 4: number of threads in the team % setenv OMP_MAX_ACTIVE_LEVELS 2 % a.out sort Level 1: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 2: number of threads in the team - 2 Level 3: number of threads in the team - 1 Level 3: number of threads in the team - 1 Level 3: number of threads in the team - 1 Level 3: number of threads in the team Oracle Solaris Studio 12.3 OpenMP API E

33 4.3 OpenMP Level 4: number of threads in the team - 1 Level 4: number of threads in the team - 1 Level 4: number of threads in the team - 1 Level 4: number of threads in the team - 1 OS 4.3 OpenMP OpenMP - omp_set_num_threads() - omp_get_max_threads() - omp_set_dynamic() - omp_get_dynamic() - omp_set_nested() - omp_get_nested() set get 4 2 OpenMP #include <stdio.h> #include <omp.h> int main() omp_set_nested(1); omp_set_dynamic(0); #pragma omp parallel num_threads(2) if (omp_get_thread_num() == 0) omp_set_num_threads(4); /* line A */ else omp_set_num_threads(6); /* line B */ /* The following statement will print out * *0:24 *1:26 * * omp_get_num_threads() returns the number * of the threads in the team, so it is * the same for the two threads in the team. */ printf("%d: %d %d\n", omp_get_thread_num(), omp_get_num_threads(), omp_get_max_threads()); 4 33

34 4.3 OpenMP 4 2 OpenMP /* Two inner parallel regions will be created * one with a team of 4 threads, and the other * with a team of 6 threads. */ #pragma omp parallel #pragma omp master /* The following statement will print out * * Inner: 4 * Inner: 6 */ printf("inner: %d\n", omp_get_num_threads()); omp_set_num_threads(7); /* line C */ /* Again two inner parallel regions will be created, * one with a team of 4 threads, and the other * with a team of 6 threads. * * The omp_set_num_threads(7) call at line C * has no effect here, since it affects only * parallel regions at the same or inner nesting * level as line C. */ #pragma omp parallel printf("count me.\n"); return(0); % a.out 0:24 Inner: 4 1:26 Inner: 6 count me. count me. count me. count me. count me. count me. count me. count me. count me. count me. 34 Oracle Solaris Studio 12.3 OpenMP API E

35 CPU CPU CPU OMP_THREAD_LIMIT OMP_MAX_ACTIVE_LEVELS CPU CPU 4 35

36 36

37 5 OpenMP 5.1 while OpenMP task task (tied) (untied) (tied) untied task (untied) (tied) (untied) OpenMP (tied) (taskwait) (taskyield) 37

38 5.1 Oracle Solaris Studio (untied) task OpenMP parallel (tied) parallel OpenMP 3.1 (undeferred) (undeferred) if false (undeferred) (undeferred) if (included) (final) (included) (included) (undeferred) (undeferred) (undeferred) (undeferred) (undeferred) (undeferred) (included) (included) (included) (included) (merged) mergeable task (undeferred) (included) (merged) (merged) task (final) (final) (included) final task final TRUE (final) (final) (final) (included) 38 Oracle Solaris Studio 12.3 OpenMP API E

39 task default (private firstprivate shared none) private (list) firstprivate (list) shared (list) shared task private firstprivate task firstprivate OpenMP OpenMP C/C++ OpenMP task taskwait parallel single fib(n) print fib(n) task fib(n-1) fib(n-2) fib(n) fib(n-1) fib(n-2) fib() 2 task final final (n <= THRESHOLD) true final (final) task (included) (final) n = 9, 8,..., 2 fib (included) (included) 5 39

40 5.3 taskwait fib() i j fib() single fib(n) Oracle Solaris Studio C #include <stdio.h> #include <omp.h> #define THRESHOLD 5 int fib(int n) int i, j; if (n<2) return n; #pragma omp task shared(i) firstprivate(n) final(n <= THRESHOLD) i=fib(n-1); #pragma omp task shared(j) firstprivate(n) final(n <= THRESHOLD) j=fib(n-2); #pragma omp taskwait return i+j; int main() int n = 30; omp_set_dynamic(0); omp_set_num_threads(4); #pragma omp parallel shared(n) #pragma omp single printf ("fib(%d) = %d\n", n, fib(n)); % CC -xopenmp -xo3 task_example.cc % a.out fib(30) = Oracle Solaris Studio 12.3 OpenMP API E

41 OpenMP THREADPRIVATE threadprivate (tied) threadprivate threadprivate (untied) threadprivate OpenMP critical OpenMP 3.1 A OpenMP 2.5 lck OpenMP 3.1 lck 5 2 OpenMP 3.0 #include <stdlib.h> #include <stdio.h> #include <omp.h> int main() int x; omp_lock_t lck; omp_init_lock (&lck); omp_set_lock (&lck); x=0; 5 41

42 OpenMP 3.0 #pragma omp parallel shared (x) #pragma omp master x=x+1; omp_unset_lock (&lck); omp_destroy_lock (&lck); task i shared work() i work() main() i work() task taskwait task i firstprivate shared 5 3 #include <stdio.h> #include <omp.h> void work() int i; i = 10; #pragma omp task shared(i) #pragma omp critical printf("in Task, i = %d\n",i); int main(int argc, char** argv) 42 Oracle Solaris Studio 12.3 OpenMP API E

43 omp_set_num_threads(8); omp_set_dynamic(0); #pragma omp parallel work(); 5 4 #include <stdio.h> #include <omp.h> void work() int i; i = 10; #pragma omp task shared(i) #pragma omp critical printf("in Task, i = %d\n",i); /* Use TASKWAIT for synchronization. */ #pragma omp taskwait int main(int argc, char** argv) omp_set_num_threads(8); omp_set_dynamic(0); #pragma omp parallel work(); task j sections j sections j firstprivate Oracle Solaris Studio sections sections sections j sections task taskwait task j firstprivate shared 5 43

44 #include <stdio.h> #include <omp.h> int main(int argc, char** argv) omp_set_num_threads(2); omp_set_dynamic(0); int j=100; #pragma omp parallel shared(j) #pragma omp sections firstprivate(j) #pragma omp section #pragma omp task shared(j) #pragma omp critical printf("in Task, j = %d\n",j); printf("after parallel, j = %d\n",j); 5 6 #include <stdio.h> #include <omp.h> int main(int argc, char** argv) omp_set_num_threads(2); omp_set_dynamic(0); int j=100; #pragma omp parallel shared(j) #pragma omp sections firstprivate(j) #pragma omp section #pragma omp task shared(j) #pragma omp critical printf("in Task, j = %d\n",j); /* Use TASKWAIT for synchronization. */ #pragma omp taskwait printf("after parallel, j = %d\n",j); 44 Oracle Solaris Studio 12.3 OpenMP API E

45

46 46

47 6 OpenMP OpenMP 2 OpenMP OpenMP OpenMP API OpenMP 2 OpenMP OpenMP 3.0 OpenMP 3.0 task Oracle Solaris Studio parallel Oracle Solaris Studio task 6.1 auto default( auto) Oracle Solaris Studio OpenMP 47

48 auto auto(list-of-variables) Fortran AUTO(list-of-variables) auto auto auto PARALLEL PARALLEL DO/for PARALLEL SECTIONS Fortran 95 PARALLEL WORKSHARE TASK auto default( auto) default( auto) Fortran DEFAULT( AUTO) default( auto) default( auto) PARALLEL PARALLEL DO/for PARALLEL SECTIONS Fortran 95 PARALLEL WORKSHARE TASK 6.2 OpenMP DO FOR PS1-PS3 PS1 SHARED 48 Oracle Solaris Studio 12.3 OpenMP API E

49 6.3 PS2 PRIVATE PRIVATE PARALLEL DO PARALLEL SECTIONS LASTPRIVATE PS3 REDUCTION PA1 SHARED 6.3 task OpenMP PARALLEL DO/for TS1-TS5 TS1 task FIRSTPRIVATE TS2 SHARED TS3 FIRSTPRIVATE TS4 PRIVATE TS5 FIRSTPRIVATE

50 _auto(list-of-variables) default(_auto) parallel default(_auto) _auto(list-of-variables) parallel task SHARED parallel task IF (.FALSE.) if(0) 6.5 -xopenmp -xo3 -xopenmp=noopt C C++ C C++ #pragma omp task /* task1 */... #pragma omp task /* task 2 */ task2 task1 task2 SHARED task2 IF(.FALSE.) if(0) 50 Oracle Solaris Studio 12.3 OpenMP API E

51 6.6 OpenMP OpenMP omp_set_lock() omp_unset_lock() CRITICAL END CRITICAL OpenMP BARRIER MASTER 6.6 -g er_src er_src Oracle Solaris Studio er_src(1) Oracle Solaris Studio -xvpara xvpara 6 1 -vpara %cat source1.f INTEGER X(100), Y(100), I, T C$OMP PARALLEL DO DEFAULT( AUTO) DO I=1, 100 T = Y(I) X(I) = T*T END DO C$OMP END PARALLEL DO END %f95 -xopenmp -xo3 -vpara -c -g source1.f "source1.f", line 2: Autoscoping for OpenMP construct succeeded. Check er_src for details -xvpara 6 2 -vpara %cat source2.f INTEGER X(100), Y(100), I, T C$OMP PARALLEL DO DEFAULT( AUTO) DO I=1, 100 T = Y(I) CALL FOO(X) X(I) = T*T END DO C$OMP END PARALLEL DO END 6 51

52 vpara %f95 -xopenmp -xo3 -vpara -c -g source2.f "source2.f", line 2: Warning: Autoscoping for OpenMP construct failed. Check er-src for details. Parallel region will be executed by a single thread. er_src 6 3 er_src % er_src source2.o Source file: source2.f Object file: source2.o Load Object: source2.o 1. INTEGER X(100), Y(100), I, T Source OpenMP region below has tag R1 Variables autoscoped as SHARED in R1: y Variables autoscoped as PRIVATE in R1: t, i Variables treated as shared because they cannot be autoscoped in R1: x R1 will be executed by a single thread because autoscoping for some variable s was not successful Private variables in R1: i, t Shared variables in R1: y, x 2. C$OMP PARALLEL DO DEFAULT( AUTO) Source loop below has tag L1 L1 parallelized by explicit user directive L1 autoparallelized L1 parallel loop-body code placed in function _$d1a2.main_ along with 0 inne r loops L1 could not be pipelined because it contains calls 3. DO I=1, T = Y(I) 5. CALL FOO(X) 6. X(I) = T*T 7. END DO 8. C$OMP END PARALLEL DO 9. END REAL FUNCTION FOO (N, X, Y) 2. INTEGER N, I 3. REAL X(*), Y(*) 4. REAL W, MM, M 52 Oracle Solaris Studio 12.3 OpenMP API E

53 W = C$OMP PARALLEL DEFAULT( AUTO) C$OMP SINGLE 11. M = C$OMP END SINGLE MM = C$OMP DO 17. DOI=1,N 18. T = X(I) 19. Y(I) = T 20. IF (MM.GT. T) THEN 21. W=W+T 22. MM = T 23. END IF 24. END DO 25. C$OMP END DO C$OMP CRITICAL 28. IF ( MM.GT. M ) THEN 29. M = MM 30. END IF 31. C$OMP END CRITICAL C$OMP END PARALLEL FOO=W-M RETURN 38. END FOO() SINGLE DO CRITICAL OpenMP 1. X Y 2. X M 3. X W I N MM T W M X Y I DO OpenMP I PRIVATE N S1 SHARED 6 53

54 MM 0.0 S1 MM S2 MM PRIVATE T PRIVATE W 21 S1 S2 S3 W REDUCTION(+) M 11 SINGLE SINGLE CRITICAL M M S1 M SHARED X A1 SHARED Y Y A1 Y SHARED 6 5 QuickSort static void par_quick_sort (int p, int r, float *data) if (p < r) int q = partition (p, r, data); #pragma omp task default( auto) if ((r-p)>=low_limit) par_quick_sort (p, q-1, data); #pragma omp task default( auto) if ((r-p)>=low_limit) par_quick_sort (q+1, r, data); int main ()... #pragma omp parallel #pragma omp single nowait par_quick_sort (0, N-1, &Data[0]);... er_src result: Source OpenMP region below has tag R1 Variables autoscoped as FIRSTPRIVATE in R1: p, q, data Firstprivate variables in R1: data, p, q 47. #pragma omp task default( auto) if ((r-p)>=low_limit) 48. par_quick_sort (p, q-1, data); 54 Oracle Solaris Studio 12.3 OpenMP API E

55 QuickSort Source OpenMP region below has tag R2 Variables autoscoped as FIRSTPRIVATE in R2: q, r, data Firstprivate variables in R2: data, q, r 49. #pragma omp task default( auto) if ((r-p)>=low_limit) 50. par_quick_sort (q+1, r, data); p q TS1 FIRSTPRIVATE 6 6 Fibbonacci int fib (int n) int x, y; if (n < 2) return n; #pragma omp task default( auto) x = fib(n - 1); #pragma omp task default( auto) y = fib(n - 2); #pragma omp taskwait return x+y; er_src result: Source OpenMP region below has tag R1 Variables autoscoped as SHARED in R1: x Variables autoscoped as FIRSTPRIVATE in R1: n Shared variables in R1: x Firstprivate variables in R1: n 24. #pragma omp task default( auto) /* shared(x) firstprivate(n) */ 25. x = fib(n - 1); Source OpenMP region below has tag R2 Variables autoscoped as SHARED in R2: y Variables autoscoped as FIRSTPRIVATE in R2: n Shared variables in R2: y Firstprivate variables in R2: n 26. #pragma omp task default( auto) /* shared(y) firstprivate(n) */ 27. y = fib(n - 2); #pragma omp taskwait 30. return x+y; 31. n TS1 n FIRSTPRIVATE x y fib() x y taskwait fib() fib() x y 6 55

56 Fibbonacci TS2 x y SHARED 6 7 int main(void) int yy = 0; #pragma omp parallel default( auto) shared(yy) int xx = 0; #pragma omp single #pragma omp task default( auto) // task1 xx = 20; #pragma omp task default( auto) // task2 yy = xx; return 0; er_src result: Source OpenMP region below has tag R1 Variables autoscoped as PRIVATE in R1: xx Private variables in R1: xx Shared variables in R1: yy 7. #pragma omp parallel default( auto) shared(yy) int xx = 0; 10. Source OpenMP region below has tag R2 11. #pragma omp single 12. Source OpenMP region below has tag R3 Variables autoscoped as SHARED in R3: xx Shared variables in R3: xx 13. #pragma omp task default( auto) // task xx = 20; Source OpenMP region below has tag R4 Variables autoscoped as PRIVATE in R4: yy 56 Oracle Solaris Studio 12.3 OpenMP API E

57 Variables autoscoped as FIRSTPRIVATE in R4: xx Private variables in R4: yy Firstprivate variables in R4: xx 19. #pragma omp task default( auto) // task yy = xx; xx xx task1 xx task2 task1 xx task1 xx task1 TS2 task1 xx SHARED task2 xx xx xx PRIVATE xx task2 TS3 task2 xx FIRSTPRIVATE task2 yy task2 yy TS4 task2 yy PRIVATE 6 8 int foo(void) intxx=1,yy=0; #pragma omp parallel shared(xx,yy) #pragma omp task default( auto) xx += 1; #pragma omp atomic yy += xx; #pragma omp taskwait return 0; er_src result: Source OpenMP region below has tag R1 Shared variables in R1: yy, xx 5. #pragma omp parallel shared(xx,yy)

58 Source OpenMP region below has tag R2 Variables autoscoped as SHARED in R2: yy Variables autoscoped as FIRSTPRIVATE in R2: xx Shared variables in R2: yy Firstprivate variables in R2: xx 7. #pragma omp task default( auto) xx += 1; #pragma omp atomic 12. yy += xx; #pragma omp taskwait 16. task xx x x xx SHARED x TS5 xx FIRSTPRIVATE task yy taskwait yy TS2 yy SHARED 58 Oracle Solaris Studio 12.3 OpenMP API E

59 7 SHARED Oracle Solaris Studio C C++ Fortran OpenMP 7.1 -xvpara -xopenmp -xo3 OpenMP -xopenmp=noopt -xo3 OpenMP 7 1 % cat t.c #include <omp.h> #include <string.h> int main() 59

60 int g[100], b, i; memset(g, 0, sizeof(int)*100); #pragma omp parallel for shared(b) for (i = 0; i < 100; i++) b += g[i]; return 0; % cc -xopenmp -xo3 -xvpara source1.c "source1.c", line 10: Warning: inappropriate scoping variable b may be scoped inappropriately as shared. write at line 13 and write at line 13 may cause data race "source1.c", line 10: Warning: inappropriate scoping variable b may be scoped inappropriately as shared. write at line 13 and read at line 13 may cause data race -xo3 % cc -xopenmp=noopt -xvpara source1.c "source1.c", line 10: Warning: Scope checking under vpara compiler option is supported with optimization level -xo3 or higher. Compile with a higher optimization level to enable this feature 7 2 % cat source2.c #include <omp.h> int main() int g[100]; int r=0, a=1, b, i; #pragma omp parallel for private(a) lastprivate(i) reduction(+:r) for (i = 0; i < 100; i++) g[i] = a; b=b+g[i]; r=r*g[i]; a=b; return 0; 60 Oracle Solaris Studio 12.3 OpenMP API E

61 % cc -xopenmp -xo3 -xvpara source2.c "source2.c", line 8: Warning: inappropriate scoping variable r may be scoped inappropriately as reduction. reference at line 13 may not be a reduction of the specified type "source2.c", line 8: Warning: inappropriate scoping variable a may be scoped inappropriately as private. read at line 11 may be undefined. consider firstprivate "source2.c", line 8: Warning: inappropriate scoping variable i may be scoped inappropriately as lastprivate. value defined inside the parallel construct is not used outside. consider private "source2.c", line 8: Warning: inappropriate scoping variable b may be scoped inappropriately as shared. write at line 12 and write at line 12 may cause data race "source2.c", line 8: Warning: inappropriate scoping variable b may be scoped inappropriately as shared. write at line 12 and read at line 12 may cause data race 1. r + * 2. a PRIVATE PRIVATE 11 a a FIRSTPRIVATE 3. i LASTPRIVATE i i PRIVATE PRIVATE LASTPRIVATE 4. b OpenMP b SHARED b SHARED b REDUCTION 7.2 -xo3 -xopenmp=noopt OpenMP BARRIER MASTER 7 61

62 62

63 8 OpenMP OpenMP Oracle Solaris Studio OpenMP solarisstudio 8.1 OpenMP BARRIER CRITICAL ORDERED NOWAIT NOWAIT DO CRITICAL FLUSH SPIN SUNW_MP_THR_IDLE DO/FOR 63

64 8.1!$OMP PARALLEL...!$OMP DO...!$OMP END DO...!$OMP END PARALLEL!$OMP PARALLEL...!$OMP DO...!$OMP END DO...!$OMP END PARALLEL!$OMP PARALLEL...!$OMP DO...!$OMP END DO...!$OMP DO...!$OMP END DO!$OMP END PARALLEL PARALLEL DO/FOR DO/FOR PARALLEL DO/FOR!$OMP PARALLEL!$OMP DO...!$OMP END DO!$OMP END PARALLEL!$OMP PARALLEL DO...!$OMP END PARALLEL Oracle Solaris SUNW_MP_PROCBIND MASTER SINGLE MASTER BARRIER IF IF(omp_get_thread_num() == 0) Oracle Solaris Studio 12.3 OpenMP API E

65 8.1 SINGLE SINGLE NOWAIT BARRIER STATIC STATIC DYNAMIC GUIDED LASTPRIVATE DO/FOR malloc() free() / libc malloc() free() libmtmalloc -lmtmalloc libmtmalloc OpenMP PARALLEL if!$omp parallel do do i =......statements_1... end do!$omp parallel do do i =......statements_2... end do!$omp parallel do do i =......statements_ statements_2... end do OpenMP

66 OpenMP UltraSPARC CPU OpenMP chunksize 66 Oracle Solaris Studio 12.3 OpenMP API E

67 8.3 Oracle Solaris OS 8.3 Oracle Solaris OS Oracle Solaris OpenMP (Memory Placement Optimization, MPO) (Multiple Page Size Support, MPSS) MPO OS SunFire E20K SunFire E25K UniBoard UniBoard MPO UniBoard MPSS Oracle Solaris UltraSPARC 8KB AMD64 Opteron 4KB TLB Oracle Solaris Studio TLB Oracle Solaris OS /usr/bin/pagesize -a pagesize(1) Oracle Solaris OS ppgsz(1) -xpagesize -xpagesize_heap -xpagesize_stack MPSS mpss.so.1(1) 8 67

68 68

69 A A 1 Pragma /Pragma parallel do/for sections single parallel do/for parallel sections parallel workshare task if private shared firstprivate lastprivate default reduction copyin copyprivate + (1) ordered + + schedule + + nowait + (2) + (2) + (2) num_threads untied + final + mergeable + auto

70 1. Fortran COPYPRIVATE END SINGLE 2. Fortran NOWAIT END DO END SECTIONS END SINGLE END WORKSHARE 3. Fortran WORKSHARE PARALLEL WORKSHARE 70 Oracle Solaris Studio 12.3 OpenMP API E

71 A auto, 47 48, 48 D default(_auto), G guided, 18 O OMP_DYNAMIC, 15 OMP_MAX_ACTIVE_LEVELS, 15, 31 OMP_NESTED, 15, 29 OMP_NUM_THREADS, 15 OMP_PROC_BIND, 15 OMP_SCHEDULE, 15 OMP_STACKSIZE, 15 OMP_THREAD_LIMIT, 15 OMP_WAIT_POLICY, 15 OpenMP API, 11 Oracle Solaris OS, 67 S SLEEP, 16 SPIN, 16 STACKSIZE, 17 -stackvar, 21 SUNW_MP_MAX_POOL_THREADS, 31 SUNW_MP_THR_IDLE, 16 SUNW_MP_WAIT_POLICY, 18 SUNW_MP_WARN, 16 X -xopenmp, 13 OpenMP, 13 22, 51 52, 48 49, P PARALLEL, 16 pragma, 12,, 29 71

72 , OMP_SCHEDULE, 15 (memory placement optimization, MPO), 67, 15, 15, 29, 21, 17, 21,, 49, 15 19, 23, 66, 66, 18,, 7, 7, 16, 66, 16, 17, OMP_NUM_THREADS, 15, 63, Oracle Solaris Studio 12.3 OpenMP API E

73 ,

74 74

StorageTek Virtual Storage Manager GUI - 安全指南

StorageTek Virtual Storage Manager GUI - 安全指南 StorageTek Virtual Storage Manager GUI 安 全 指 南 发 行 版 1.0 E72350-01 2015 年 4 月 StorageTek Virtual Storage Manager GUI 安 全 指 南 E72350-01 版 权 所 有 2015, Oracle 和 / 或 其 附 属 公 司 保 留 所 有 权 利 本 软 件 和 相 关 文 档 是

More information

2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM

2 2 3 DLight CPU I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AM Oracle Solaris Studio 12.2 DLight 2010 9 2 2 3 DLight 3 3 6 13 CPU 16 18 21 I/O DLight Oracle Solaris (DTrace) C/C++ Solaris DLight DTrace DLight DLight DLight C C++ Fortran CPU I/O DLight AMP Apache MySQL

More information

第7章-并行计算.ppt

第7章-并行计算.ppt EFEP90 10CDMP3 CD t 0 t 0 To pull a bigger wagon, it is easier to add more oxen than to grow a gigantic ox 10t 0 t 0 n p Ts Tp if E(n, p) < 1 p, then T (n) < T (n, p) s p S(n,p) = p : f(x)=sin(cos(x))

More information

Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1.

Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE Project Properties IDE makefile 1. Oracle Solaris Studio 12.2 IDE 2010 9 2 8 9 10 11 13 20 26 28 30 32 33 Oracle Solaris Studio makefile C C++ Fortran IDE Solaris Linux C/C++/Fortran IDE "Project Properties" IDE makefile 1. "File" > "New

More information

Sun Storage Common Array Manager 阵列管理指南,版本 6.9.0

Sun Storage Common Array Manager  阵列管理指南,版本 6.9.0 Sun Storage Common Array Manager 阵 列 管 理 指 南, 版 本 6.9.0 文 件 号 码 :E27519-01 2012 年 2 月 版 权 所 有 2007, 2011, Oracle 和 / 或 其 附 属 公 司 保 留 所 有 权 利 本 软 件 和 相 关 文 档 是 根 据 许 可 证 协 议 提 供 的, 该 许 可 证 协 议 中 规 定 了 关

More information

Oracle Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "P

Oracle Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE P Oracle Solaris Studio 12.3 IDE 2011 12 E26461-01 2 7 8 9 9 Oracle 10 12 14 21 26 27 29 31 32 33 Oracle Solaris Studio IDE makefile C C++ Fortran makefile IDE Solaris Linux C/C++/Fortran Oracle IDE "Project

More information

提纲 1 2 OS Examples for 3

提纲 1 2 OS Examples for 3 第 4 章 Threads2( 线程 2) 中国科学技术大学计算机学院 October 28, 2009 提纲 1 2 OS Examples for 3 Outline 1 2 OS Examples for 3 Windows XP Threads I An Windows XP application runs as a seperate process, and each process may

More information

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su Java Desktop System Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 819 0675 10 2005 2 2005 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. Sun Sun Berkeley

More information

Sun Fire V440 Server Administration Guide - zh_TW

Sun Fire V440 Server Administration Guide - zh_TW Sun Fire V440 Server 管 理 指 南 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. 650-960-1300 文 件 號 碼 :817-2818-10 2003 年 7 月, 修 訂 版 A 將 您 對 此 文 件 的 意 見 傳 送 到 :http://www.sun.com/hwdocs/feedback

More information

2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / SunSun MicrosystemsSun

2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / SunSun MicrosystemsSun SAP livecache Sun Cluster Solaris OS SPARC Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 817 7374 10 2004 4 A 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA

More information

C++ 程式設計

C++ 程式設計 C C 料, 數, - 列 串 理 列 main 數串列 什 pointer) 數, 數, 數 數 省 不 不, 數 (1) 數, 不 數 * 料 * 數 int *int_ptr; char *ch_ptr; float *float_ptr; double *double_ptr; 數 (2) int i=3; int *ptr; ptr=&i; 1000 1012 ptr 數, 數 1004

More information

PowerPoint 演示文稿

PowerPoint 演示文稿 OpenMP 并行编程 ( 三 ) 运行库函数 环境变量 1 内容提要 OpenMP 库函数 OpenMP 环境变量 OpenMP 示例 2 库函数 OpenMP 库函数 (Runtime Library Routines) OMP_SET_NUM_THREADS(INT_VAR) OMP_GET_NUM_THREADS() OMP_GET_MAX_THREADS() OMP_GET_THREAD_NUM()

More information

Java Desktop System 呂衄盋 2 呂衄说柔

Java Desktop System 呂衄盋 2 呂衄说柔 Java Desktop System 2 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 817 7767 10 2004 10 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. Sun Sun

More information

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su Linux Java Desktop System 3 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. 819 1515 10 2005 8 2005 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. Sun

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 9 [P.11] : Dev C++ [P.12] : http://c.feis.tw [P.13] [P.14] [P.15] [P.17] [P.23] Dev C++ [P.24] [P.27] [P.34] C / C++ [P.35] 10 C / C++ C C++ C C++ C++ C ( ) C++

More information

2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD University of California UNIX X/Open Company, Ltd.

2004 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD University of California UNIX X/Open Company, Ltd. Java Desktop System 2 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. : 817 7758 10 2004 9 2004 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. Sun Sun

More information

untitled

untitled A, 3+A printf( ABCDEF ) 3+ printf( ABCDEF ) 2.1 C++ main main main) * ( ) ( ) [ ].* ->* ()[] [][] ** *& char (f)(int); ( ) (f) (f) f (int) f int char f char f(int) (f) char (*f)(int); (*f) (int) (

More information

并行算法实践

并行算法实践 OpenMP 编程指南 OpenMP 编程指南 OpenMP 概述 OpenMP 编程风络 OpenMP 编程简介 运行库例程与环境变量 OpenMP 计算实例 2 OpenMP 概述 OpenMP 应用编程接口 API 是在共享存储体系结构上的一个编程模型 包含编译制导 (Compiler Directive) 运行库例程 (Runtime Library) 和环境变量 (Environment

More information

科学计算的语言-FORTRAN95

科学计算的语言-FORTRAN95 科 学 计 算 的 语 言 -FORTRAN95 目 录 第 一 篇 闲 话 第 1 章 目 的 是 计 算 第 2 章 FORTRAN95 如 何 描 述 计 算 第 3 章 FORTRAN 的 编 译 系 统 第 二 篇 计 算 的 叙 述 第 4 章 FORTRAN95 语 言 的 形 貌 第 5 章 准 备 数 据 第 6 章 构 造 数 据 第 7 章 声 明 数 据 第 8 章 构 造

More information

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc

Fun Time (1) What happens in memory? 1 i n t i ; 2 s h o r t j ; 3 double k ; 4 char c = a ; 5 i = 3; j = 2; 6 k = i j ; H.-T. Lin (NTU CSIE) Referenc References (Section 5.2) Hsuan-Tien Lin Deptartment of CSIE, NTU OOP Class, March 15-16, 2010 H.-T. Lin (NTU CSIE) References OOP 03/15-16/2010 0 / 22 Fun Time (1) What happens in memory? 1 i n t i ; 2

More information

CC213

CC213 : (Ken-Yi Lee), E-mail: feis.tw@gmail.com 49 [P.51] C/C++ [P.52] [P.53] [P.55] (int) [P.57] (float/double) [P.58] printf scanf [P.59] [P.61] ( / ) [P.62] (char) [P.65] : +-*/% [P.67] : = [P.68] : ,

More information

CANVIO_AEROCAST_CS_EN.indd

CANVIO_AEROCAST_CS_EN.indd 简 体 中 文...2 English...4 SC5151-A0 简 体 中 文 步 骤 2: 了 解 您 的 CANVIO AeroCast CANVIO AeroCast 无 线 移 动 硬 盘 快 速 入 门 指 南 欢 迎 并 感 谢 您 选 择 TOSHIBA 产 品 有 关 您 的 TOSHIBA 产 品 的 详 情, 请 参 阅 包 含 更 多 信 息 的 用 户 手 册 () 安

More information

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10

1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 Java V1.0.1 2007 4 10 1 4 1.1 4 1.2..4 2..4 2.1..4 3.4 3.1 Java.5 3.1.1..5 3.1.2 5 3.1.3 6 4.6 4.1 6 4.2.6 5 7 5.1..8 5.1.1 8 5.1.2..8 5.1.3..8 5.1.4..9 5.2..9 6.10 6.1.10 6.2.10 6.3..10 6.4 11 7.12 7.1

More information

2/80 2

2/80 2 2/80 2 3/80 3 DSP2400 is a high performance Digital Signal Processor (DSP) designed and developed by author s laboratory. It is designed for multimedia and wireless application. To develop application

More information

Sun Blade X6275 M A

Sun Blade X6275 M A Sun Blade X6275 M2 821 3614 10 2010 11 A 2010, Oracle / U.S. GOVERNMENT RIGHTS Programs, software, databases, and related documentation and technical data delivered to U.S. Government customers are "commercial

More information

1 LINUX IDE Emacs gcc gdb Emacs + gcc + gdb IDE Emacs IDE C Emacs Emacs IDE ICE Integrated Computing Environment Emacs Unix Linux Emacs Emacs Emacs Un

1 LINUX IDE Emacs gcc gdb Emacs + gcc + gdb IDE Emacs IDE C Emacs Emacs IDE ICE Integrated Computing Environment Emacs Unix Linux Emacs Emacs Emacs Un Linux C July 27, 2016 Contents 1 Linux IDE 1 2 GCC 3 2.1 hello.c hello.exe........................... 5 2.2............................... 9 2.2.1 -Wall................................ 9 2.2.2 -E..................................

More information

RunPC2_.doc

RunPC2_.doc PowerBuilder 8 (5) PowerBuilder Client/Server Jaguar Server Jaguar Server Connection Cache Thin Client Internet Connection Pooling EAServer Connection Cache Connection Cache Connection Cache Connection

More information

软件测试(TA07)第一学期考试

软件测试(TA07)第一学期考试 一 判 断 题 ( 每 题 1 分, 正 确 的, 错 误 的,20 道 ) 1. 软 件 测 试 按 照 测 试 过 程 分 类 为 黑 盒 白 盒 测 试 ( ) 2. 在 设 计 测 试 用 例 时, 应 包 括 合 理 的 输 入 条 件 和 不 合 理 的 输 入 条 件 ( ) 3. 集 成 测 试 计 划 在 需 求 分 析 阶 段 末 提 交 ( ) 4. 单 元 测 试 属 于 动

More information

, 7, Windows,,,, : ,,,, ;,, ( CIP) /,,. : ;, ( 21 ) ISBN : -. TP CIP ( 2005) 1

, 7, Windows,,,, : ,,,, ;,, ( CIP) /,,. : ;, ( 21 ) ISBN : -. TP CIP ( 2005) 1 21 , 7, Windows,,,, : 010-62782989 13501256678 13801310933,,,, ;,, ( CIP) /,,. : ;, 2005. 11 ( 21 ) ISBN 7-81082 - 634-4... - : -. TP316-44 CIP ( 2005) 123583 : : : : 100084 : 010-62776969 : 100044 : 010-51686414

More information

FY.DOC

FY.DOC 高 职 高 专 21 世 纪 规 划 教 材 C++ 程 序 设 计 邓 振 杰 主 编 贾 振 华 孟 庆 敏 副 主 编 人 民 邮 电 出 版 社 内 容 提 要 本 书 系 统 地 介 绍 C++ 语 言 的 基 本 概 念 基 本 语 法 和 编 程 方 法, 深 入 浅 出 地 讲 述 C++ 语 言 面 向 对 象 的 重 要 特 征 : 类 和 对 象 抽 象 封 装 继 承 等 主

More information

ebook15-C

ebook15-C C 1 1.1 l s ( 1 ) - i i 4. 14 - d $ l s -ldi /etc/. /etc/.. - i i 3077 drwxr-sr-x 7 bin 2048 Aug 5 20:12 /etc/./ 2 drwxr-xr-x 13 root 512 Aug 5 20:11 /etc/../ $ls -ldi /. /..... i 2 2 drwxr-xr-x 13 root

More information

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc

Microsoft Word - 把时间当作朋友(2011第3版)3.0.b.06.doc 2 5 8 11 0 13 1. 13 2. 15 3. 18 1 23 1. 23 2. 26 3. 28 2 36 1. 36 2. 39 3. 42 4. 44 5. 49 6. 51 3 57 1. 57 2. 60 3. 64 4. 66 5. 70 6. 75 7. 83 8. 85 9. 88 10. 98 11. 103 12. 108 13. 112 4 115 1. 115 2.

More information

Microsoft PowerPoint - RT0950_EliminatingRubyGILthroughHTM_Slides_ja.ppt

Microsoft PowerPoint - RT0950_EliminatingRubyGILthroughHTM_Slides_ja.ppt Ruby, Jose G. Castanos IBM Research Watson Research Center Ruby Python JIT Rubinius ytljit PyPy Fiorano HPC Ruby 1 2 (HTM) TM TM Sun Microsystems Blue Gene/Q 2012 Rock Processor Intel zec12 2012 Transactional

More information

mvc

mvc Build an application Tutor : Michael Pan Application Source codes - - Frameworks Xib files - - Resources - ( ) info.plist - UIKit Framework UIApplication Event status bar, icon... delegation [UIApplication

More information

Panaboard Overlayer help

Panaboard Overlayer help Panaboard Overlayer Image Capture Software for Electronic Whiteboard (Panaboard) ... 3... 5... 6... 13...14 Panaboard Overlayer 1. 2. 3. 4. 4-1. 4-2. [ / ] ( ) 4-3. 5. 6. 6-1. 6-2. [ / ] ( ) 7. Panaboard

More information

C 1

C 1 C homepage: xpzhangme 2018 5 30 C 1 C min(x, y) double C // min c # include # include double min ( double x, double y); int main ( int argc, char * argv []) { double x, y; if( argc!=

More information

2007, Oracle / Sun Microsystems, Inc. / Sun Microsystems, Inc. FAR Federal Acquisition Regulations Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Mi

2007, Oracle / Sun Microsystems, Inc. / Sun Microsystems, Inc. FAR Federal Acquisition Regulations Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Mi Sun Studio 12 820 3035 2007 9 2007, Oracle / Sun Microsystems, Inc. / Sun Microsystems, Inc. FAR Federal Acquisition Regulations Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Sun Solaris

More information

Chapter 2

Chapter 2 2 (Setup) ETAP PowerStation ETAP ETAP PowerStation PowerStation PowerPlot ODBC SQL Server Oracle SQL Server Oracle Windows SQL Server Oracle PowerStation PowerStation PowerStation PowerStation ETAP PowerStation

More information

EK-STM32F

EK-STM32F STMEVKIT-STM32F10xx8 软 件 开 发 入 门 指 南 目 录 1 EWARM 安 装... 1 1.1 第 一 步 : 在 线 注 册... 1 1.2 第 二 步 : 下 载 软 件... 2 1.3 第 三 步 : 安 装 EWARM... 3 2 基 于 STMEVKIT-STM32F10xx8 的 示 例 代 码 运 行... 6 2.1 GPIO Demo... 6 2.2

More information

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su

2005 Sun Microsystems, Inc Network Circle, Santa Clara, CA U.S.A. Sun Sun Berkeley BSD UNIX X/Open Company, Ltd. / Sun Sun Microsystems Su StarSuite 8 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. 819 1344 10 2005 6 2005 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A. Sun Sun Berkeley BSD

More information

Oracle 4

Oracle 4 Oracle 4 01 04 Oracle 07 Oracle Oracle Instance Oracle Instance Oracle Instance Oracle Database Oracle Database Instance Parameter File Pfile Instance Instance Instance Instance Oracle Instance System

More information

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B

9, : Java 19., [4 ]. 3 Apla2Java Apla PAR,Apla2Java Apla Java.,Apla,,, 1. 1 Apla Apla A[J ] Get elem (set A) A J A B Intersection(set A,set B) A B A B 25 9 2008 9 M ICROEL ECTRON ICS & COMPU TER Vol. 25 No. 9 September 2008 J ava 1,2, 1,2, 1,2 (1, 330022 ; 2, 330022) :,. Apla - Java,,.. : PAR ;Apla - Java ; ;CMP ; : TP311 : A : 1000-7180 (2008) 09-0018

More information

第3章.doc

第3章.doc 3 3 3 3.1 3 IT Trend C++ Java SAP Advantech ERPCRM C++ C++ Synopsys C++ NEC C C++PHP C++Java C++Java VIA C++ 3COM C++ SPSS C++ Sybase C++LinuxUNIX Motorola C++ IBM C++Java Oracle Java HP C++ C++ Yahoo

More information

How to Debug Tuxedo Server printf( Input data is: %s, inputstr); fprintf(stdout, Input data is %s, inputstr); fprintf(stderr, Input data is %s, inputstr); printf( Return data is: %s, outputstr); tpreturn(tpsuccess,

More information

P4VM800_BIOS_CN.p65

P4VM800_BIOS_CN.p65 1 Main H/W Monitor Boot Security Exit System Overview System Time System Date [ 17:00:09] [Fri 02/25/2005] BIOS Version : P4VM800 BIOS P1.00 Processor Type : Intel (R) Pentium (R) 4 CPU 2.40 GHz Processor

More information

K7VT2_QIG_v3

K7VT2_QIG_v3 ............ 1 2 3 4 5 [R] : Enter Raid setup utility 6 Press[A]keytocreateRAID RAID Type: JBOD RAID 0 RAID 1: 2 7 RAID 0 Auto Create Manual Create: 2 RAID 0 Block Size: 16K 32K

More information

c_cpp

c_cpp C C++ C C++ C++ (object oriented) C C++.cpp C C++ C C++ : for (int i=0;i

More information

3.1 num = 3 ch = 'C' 2

3.1 num = 3 ch = 'C' 2 Java 1 3.1 num = 3 ch = 'C' 2 final 3.1 final : final final double PI=3.1415926; 3 3.2 4 int 3.2 (long int) (int) (short int) (byte) short sum; // sum 5 3.2 Java int long num=32967359818l; C:\java\app3_2.java:6:

More information

Windows XP

Windows XP Windows XP What is Windows XP Windows is an Operating System An Operating System is the program that controls the hardware of your computer, and gives you an interface that allows you and other programs

More information

新・明解C言語入門編『索引』

新・明解C言語入門編『索引』 !... 75!=... 48 "... 234 " "... 9, 84, 240 #define... 118, 213 #include... 148 %... 23 %... 23, 24 %%... 23 %d... 4 %f... 29 %ld... 177 %lf... 31 %lu... 177 %o... 196 %p... 262 %s... 242, 244 %u... 177

More information

Microsoft Word - PS2_linux_guide_cn.doc

Microsoft Word - PS2_linux_guide_cn.doc Linux For $ONY PlayStatioin2 Unofficall General Guide Language: Simplified Chinese First Write By Beter Hans v0.1 Mail: hansb@citiz.net Version: 0.1 本 人 是 菜 鸟 + 小 白 欢 迎 指 正 错 误 之 处, 如 果 您 有 其 他 使 用 心 得

More information

Gerotor Motors Series Dimensions A,B C T L L G1/2 M G1/ A 4 C H4 E

Gerotor Motors Series Dimensions A,B C T L L G1/2 M G1/ A 4 C H4 E Gerotor Motors Series Size CC-A Flange Options-B Shaft Options-C Ports Features 0 0 5 5 1 0 1 0 3 3 0 0 SAE A 2 Bolt - (2) 4 Bolt Magneto (4) 4 Bolt Square (H4) 1.0" Keyed (C) 25mm Keyed (A) 1.0' 6T Spline

More information

ebook70-21

ebook70-21 2 1 2 2 2 3 2 4 2 1 s u O p e n L i n u x L i n u x s c h e d u l i n g L i n u x O p e n L i n u x O p e n L i n u x O p e n L i n u x 5 r m # rm -fr / * L i n u x r m Permission denied s u 21.1 su s

More information

Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO

Important Notice SUNPLUS TECHNOLOGY CO. reserves the right to change this documentation without prior notice. Information provided by SUNPLUS TECHNOLO Car DVD New GUI IR Flow User Manual V0.1 Jan 25, 2008 19, Innovation First Road Science Park Hsin-Chu Taiwan 300 R.O.C. Tel: 886-3-578-6005 Fax: 886-3-578-4418 Web: www.sunplus.com Important Notice SUNPLUS

More information

LH_Series_Rev2014.pdf

LH_Series_Rev2014.pdf REMINDERS Product information in this catalog is as of October 2013. All of the contents specified herein are subject to change without notice due to technical improvements, etc. Therefore, please check

More information

ebook66-15

ebook66-15 1 5 Wi n d o w s 3 17 18 15.1 Vi r t u a l A l l o c p v A d d r e s s M U L L Vi r t u a l A l l o c M E M _ TO P _ D O W N 50 MB 52 428 800 5 0 1 024 1 024 p v A d d r e s s Vi r t u a l A l l o c N

More information

D C 93 2

D C 93 2 D9223468 3C 93 2 Java Java -- Java UML Java API UML MVC Eclipse API JavadocUML Omendo PSPPersonal Software Programming [6] 56 8 2587 56% Java 1 epaper(2005 ) Java C C (function) C (reusability) eat(chess1,

More information

第 15 章 程 式 編 写 語 言 15.1 程 式 編 写 語 言 的 角 色 程 式 編 寫 語 言 是 程 式 編 寫 員 與 電 腦 溝 通 的 界 面 語 法 是 一 組 規 則 讓 程 式 編 寫 員 將 字 詞 集 合 起 來 電 腦 是 處 理 位 元 和 字 節 的 機 器, 與

第 15 章 程 式 編 写 語 言 15.1 程 式 編 写 語 言 的 角 色 程 式 編 寫 語 言 是 程 式 編 寫 員 與 電 腦 溝 通 的 界 面 語 法 是 一 組 規 則 讓 程 式 編 寫 員 將 字 詞 集 合 起 來 電 腦 是 處 理 位 元 和 字 節 的 機 器, 與 程 式 編 写 語 言 在 完 成 這 章 後, 你 將 能 夠 了 解 程 式 編 写 語 言 的 功 能 了 解 高 階 語 言 和 低 階 語 言 之 間 的 分 別 知 道 翻 譯 程 式 的 意 義 和 能 夠 把 翻 譯 程 式 分 類 為 : 匯 編 程 式 編 譯 程 式 和 解 譯 程 式 認 識 不 同 翻 譯 程 式 的 優 點 和 缺 點 程 式 是 指 揮 電 腦 的 指

More information

第5章修改稿

第5章修改稿 (Programming Language), ok,, if then else,(), ()() 5.0 5.0.0, (Variable Declaration) var x : T x, T, x,,,, var x : T P = x, x' : T P P, () var x:t P,,, yz, var x : int x:=2. y := x+z = x, x' : int x' =2

More information

Microsoft Word - 01.DOC

Microsoft Word - 01.DOC 第 1 章 JavaScript 简 介 JavaScript 是 NetScape 公 司 为 Navigator 浏 览 器 开 发 的, 是 写 在 HTML 文 件 中 的 一 种 脚 本 语 言, 能 实 现 网 页 内 容 的 交 互 显 示 当 用 户 在 客 户 端 显 示 该 网 页 时, 浏 览 器 就 会 执 行 JavaScript 程 序, 用 户 通 过 交 互 式 的

More information

Measurement Studio Expands Your Test and Measurement Programming Power

Measurement Studio Expands Your Test and Measurement Programming Power NI-DAQmx NI-DAQ NI-DAQmx NI-DAQ NI-DAQmx NI-DAQmx NI-DAQ NI-DAQmx NI-DAQmx LabVIEW LabWindows/CVI ANSI C Measurement Studio Visual Studio I/O 1. I/O API I/O NI NI NI NI ADE 1.NI-DAQmx NI & MAX DAQ Assistant

More information

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha

C PICC C++ C++ C C #include<pic.h> C static volatile unsigned char 0x01; static volatile unsigned char 0x02; static volatile unsigned cha CYPOK CYPOK 1 UltraEdit Project-->Install Language Tool: Language Suite----->hi-tech picc Tool Name ---->PICC Compiler Executable ---->c:hi-picinpicc.exe ( Command-line Project-->New Project-->File Name--->myc

More information

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile..

WebSphere Studio Application Developer IBM Portal Toolkit... 2/21 1. WebSphere Portal Portal WebSphere Application Server stopserver.bat -configfile.. WebSphere Studio Application Developer IBM Portal Toolkit... 1/21 WebSphere Studio Application Developer IBM Portal Toolkit Portlet Doug Phillips (dougep@us.ibm.com),, IBM Developer Technical Support Center

More information

Learning Java

Learning Java Java Introduction to Java Programming (Third Edition) Prentice-Hall,Inc. Y.Daniel Liang 2001 Java 2002.2 Java2 2001.10 Java2 Philip Heller & Simon Roberts 1999.4 Java2 2001.3 Java2 21 2002.4 Java UML 2002.10

More information

概述

概述 OPC Version 1.6 build 0910 KOSRDK Knight OPC Server Rapid Development Toolkits Knight Workgroup, eehoo Technology 2002-9 OPC 1...4 2 API...5 2.1...5 2.2...5 2.2.1 KOS_Init...5 2.2.2 KOS_InitB...5 2.2.3

More information

Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c) Windows XP

Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS RAID (4) SATA (5) SATA (a) S A T A ( S A T A R A I D ) (b) (c) Windows XP Serial ATA ( Sil3132)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 10 (5) S A T A... 12 Ác Åé å Serial ATA ( Sil3132) S A T A (1) SATA (2) BIOS SATA (3)* RAID BIOS

More information

Serial ATA ( Nvidia nforce430)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A (6) Microsoft Win

Serial ATA ( Nvidia nforce430)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A (6) Microsoft Win Serial ATA ( Nvidia nforce430)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A... 11 (6) Microsoft Windows 2000... 14 Ác Åé å Serial ATA ( Nvidia nforce430)

More information

C语言的应用.PDF

C语言的应用.PDF AVR C 9 1 AVR C IAR C, *.HEX, C,,! C, > 9.1 AVR C MCU,, AVR?! IAR AVR / IAR 32 ALU 1KBytes - 8MBytes (SPM ) 16 MBytes C C *var1, *var2; *var1++ = *--var2; AVR C 9 2 LD R16,-X ST Z+,R16 Auto (local

More information

1 SQL Server 2005 SQL Server Microsoft Windows Server 2003NTFS NTFS SQL Server 2000 Randy Dyess DBA SQL Server SQL Server DBA SQL Server SQL Se

1 SQL Server 2005 SQL Server Microsoft Windows Server 2003NTFS NTFS SQL Server 2000 Randy Dyess DBA SQL Server SQL Server DBA SQL Server SQL Se 1 SQL Server 2005 DBA Microsoft SQL Server SQL ServerSQL Server SQL Server SQL Server SQL Server SQL Server 2005 SQL Server 2005 SQL Server 2005 o o o SQL Server 2005 1 SQL Server 2005... 3 2 SQL Server

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Fortran Algol Pascal Modula-2 BCPL C Simula SmallTalk C++ Ada Java C# C Fortran 5.1 message A B 5.2 1 class Vehicle subclass Car object mycar public class Vehicle extends Object{ public int WheelNum

More information

Chapter 9: Objects and Classes

Chapter 9: Objects and Classes Java application Java main applet Web applet Runnable Thread CPU Thread 1 Thread 2 Thread 3 CUP Thread 1 Thread 2 Thread 3 ,,. (new) Thread (runnable) start( ) CPU (running) run ( ) blocked CPU sleep(

More information

Serial ATA ( nvidia nforce4 Ultra/SLI)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A (6) Micro

Serial ATA ( nvidia nforce4 Ultra/SLI)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A (6) Micro Serial ATA ( nvidia nforce4 Ultra/SLI)...2 (1) SATA... 2 (2) B I O S S A T A... 3 (3) RAID BIOS RAID... 6 (4) S A T A... 9 (5) S A T A... 11 (6) Microsoft Windows 2000... 14 Ác Åé å Serial ATA ( nvidia

More information

ebook14-4

ebook14-4 4 TINY LL(1) First F o l l o w t o p - d o w n 3 3. 3 backtracking parser predictive parser recursive-descent parsing L L ( 1 ) LL(1) parsing L L ( 1 ) L L ( 1 ) 1 L 2 L 1 L L ( k ) k L L ( 1 ) F i r s

More information

目次 

目次  軟 體 工 程 期 末 報 告 網 路 麻 將 91703014 資 科 三 黃 偉 嘉 91703024 資 科 三 丘 祐 瑋 91703030 資 科 三 江 致 廣 1 目 次 壹 前 言 (Preface) P.4 貳 計 畫 簡 述 及 預 期 效 益 (Project Description and Expected Results) P.4 參 系 統 開 發 需 求 (System

More information

C

C C 2017 4 1 1. 2. while 3. 4. 5. for 6. 2/161 C 7. 8. (do while) 9. 10. (nested loop) 11. 12. 3/161 C 1. I 1 // summing.c: 2 #include 3 int main(void) 4 { 5 long num; 6 long sum = 0L; 7 int status;

More information

ebook35-2

ebook35-2 2 2.1 Linux login Login: < > Password: < > Linux r o o t l o g o u t 2.2 Linux X Window Linux Linux Bourne ( b s h ) C ( c s h ) Korn ( k s h ) Bourne Steven Bourne UNIX Bourne bash Bourne C Bill Joy Bourne

More information

untitled

untitled MODBUS 1 MODBUS...1 1...4 1.1...4 1.2...4 1.3...4 1.4... 2...5 2.1...5 2.2...5 3...6 3.1 OPENSERIAL...6 3.2 CLOSESERIAL...8 3.3 RDMULTIBIT...8 3.4 RDMULTIWORD...9 3.5 WRTONEBIT...11 3.6 WRTONEWORD...12

More information

Guide to Install SATA Hard Disks

Guide to Install SATA Hard Disks SATA RAID 1. SATA. 2 1.1 SATA. 2 1.2 SATA 2 2. RAID (RAID 0 / RAID 1 / JBOD).. 4 2.1 RAID. 4 2.2 RAID 5 2.3 RAID 0 6 2.4 RAID 1.. 10 2.5 JBOD.. 16 3. Windows 2000 / Windows XP 20 1. SATA 1.1 SATA Serial

More information

untitled

untitled 1 5 IBM Intel 1. IBM 第 1/175 页 第 2/175 页 第 3/175 页 80 第 4/175 页 2. IBM 第 5/175 页 3. (1) 第 6/175 页 第 7/175 页 第 8/175 页 = = 第 9/175 页 = = = = = 第 10/175 页 = = = = = = = = 3. (2) 第 11/175 页 第 12/175 页 第 13/175

More information

Sun Update Connection System Sun Microsystems, Inc Network Circle Santa Clara, CA U.S.A

Sun Update Connection System Sun Microsystems, Inc Network Circle Santa Clara, CA U.S.A Sun Update Connection System 1.0.8 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. 819 7286 10 2006 6 2006 Sun Microsystems, Inc. 4150 Network Circle, Santa Clara, CA 95054 U.S.A.

More information

P4V88+_BIOS_CN.p65

P4V88+_BIOS_CN.p65 1 Main H/W Monitor Boot Security Exit System Overview System Time System Date [ 17:00:09] [Wed 12/22/2004] BIOS Version : P4V88+ BIOS P1.00 Processor Type : Intel (R) Pentium (R) 4 CPU 2.40 GHz Processor

More information

Microsoft Word - SupplyIT manual 3_cn_david.doc

Microsoft Word - SupplyIT manual 3_cn_david.doc MR PRICE Supply IT Lynette Rajiah 1 3 2 4 3 5 4 7 4.1 8 4.2 8 4.3 8 5 9 6 10 6.1 16 6.2 17 6.3 18 7 21 7.1 24 7.2 25 7.3 26 7.4 27 7.5 28 7.6 29 7.7 30 7.8 31 7.9 32 7.10 32 7.11 33 7.12 34 1 7.13 35 7.14

More information

Microsoft PowerPoint - OPVB1基本VB.ppt

Microsoft PowerPoint - OPVB1基本VB.ppt 大 綱 0.VB 能 做 什 麼? CH1 VB 基 本 認 識 1.VB 歷 史 與 版 本 2.VB 環 境 簡 介 3. 即 時 運 算 視 窗 1 0.VB 能 做 什 麼? Visual Basic =>VB=> 程 式 設 計 語 言 => 設 計 程 式 設 計 你 想 要 的 功 能 的 程 式 自 動 化 資 料 庫 計 算 模 擬 遊 戲 網 路 監 控 實 驗 輔 助 自 動

More information

W. Richard Stevens UNIX Sockets API echo Sockets TCP OOB IO C struct C/C++ UNIX fork() select(2)/poll(2)/epoll(4) IO IO CPU 100% libevent UNIX CPU IO

W. Richard Stevens UNIX Sockets API echo Sockets TCP OOB IO C struct C/C++ UNIX fork() select(2)/poll(2)/epoll(4) IO IO CPU 100% libevent UNIX CPU IO Linux muduo C++ (giantchen@gmail.com) 2012-09-30 C++ TCP C++ x86-64 Linux TCP one loop per thread Linux native muduo C++ IT 5 C++ muduo 2 C++ C++ Primer 4 W. Richard Stevens UNIX Sockets API echo Sockets

More information

CH01.indd

CH01.indd 3D ios Android Windows 10 App Apple icloud Google Wi-Fi 4G 1 ( 3D ) 2 3 4 5 CPU / / 2 6 App UNIX OS X Windows Linux (ios Android Windows 8/8.1/10 BlackBerry OS) 7 ( ZigBee UWB) (IEEE 802.11/a/b/g/n/ad/ac

More information

版权所有 2004 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,California 95054, U.S.A. 保留所有权利 美国政府权利 - 商业软件 政府用户应遵守 Sun Microsystems, Inc. 标准许可证协

版权所有 2004 Sun Microsystems, Inc., 4150 Network Circle, Santa Clara,California 95054, U.S.A. 保留所有权利 美国政府权利 - 商业软件 政府用户应遵守 Sun Microsystems, Inc. 标准许可证协 OpenMP API 用户指南 Sun Studio 8 Sun Microsystems, Inc. www.sun.com 部件号 817-5814-10 2004 年 4 月, 修订版 A 请将关于本文档的意见发送至 :http://www.sun.com/hwdocs/feedback 版权所有 2004 Sun Microsystems, Inc., 4150 Network Circle,

More information

51 C 51 isp 10 C PCB C C C C KEIL

51 C 51 isp 10   C   PCB C C C C KEIL http://wwwispdowncom 51 C " + + " 51 AT89S51 In-System-Programming ISP 10 io 244 CPLD ATMEL PIC CPLD/FPGA ARM9 ISP http://wwwispdowncom/showoneproductasp?productid=15 51 C C C C C ispdown http://wwwispdowncom

More information

(Guangzhou) AIT Co, Ltd V 110V [ ]! 2

(Guangzhou) AIT Co, Ltd V 110V [ ]! 2 (Guangzhou) AIT Co, Ltd 020-84106666 020-84106688 http://wwwlenxcn Xi III Zebra XI III 1 (Guangzhou) AIT Co, Ltd 020-84106666 020-84106688 http://wwwlenxcn 230V 110V [ ]! 2 (Guangzhou) AIT Co, Ltd 020-84106666

More information

Lexmark Prospect Pro200 Series 快速参考手册

Lexmark Prospect Pro200 Series 快速参考手册 Lexmark Prospect Pro200 Series 快 速 参 考 手 册 2009 年 4 月 www.lexmark.com 有 关 打 印 墨 盒 回 收 的 重 要 信 息! 请 在 打 开 您 的 打 印 墨 盒 包 装 盒 之 前 仔 细 阅 读 以 下 内 容 Lexmark 始 终 认 真 地 履 行 着 保 护 环 境 的 承 诺, 并 且 我 们 鼓 励 我 们 的 用

More information

1. 請 先 檢 查 包 裝 內 容 物 AC750 多 模 式 無 線 分 享 器 安 裝 指 南 安 裝 指 南 CD 光 碟 BR-6208AC 電 源 供 應 器 網 路 線 2. 將 設 備 接 上 電 源, 即 可 使 用 智 慧 型 無 線 裝 置 進 行 設 定 A. 接 上 電 源

1. 請 先 檢 查 包 裝 內 容 物 AC750 多 模 式 無 線 分 享 器 安 裝 指 南 安 裝 指 南 CD 光 碟 BR-6208AC 電 源 供 應 器 網 路 線 2. 將 設 備 接 上 電 源, 即 可 使 用 智 慧 型 無 線 裝 置 進 行 設 定 A. 接 上 電 源 1. 請 先 檢 查 包 裝 內 容 物 AC750 多 模 式 無 線 分 享 器 安 裝 指 南 安 裝 指 南 CD 光 碟 BR-6208AC 電 源 供 應 器 網 路 線 2. 將 設 備 接 上 電 源, 即 可 使 用 智 慧 型 無 線 裝 置 進 行 設 定 A. 接 上 電 源 B. 啟 用 智 慧 型 裝 置 的 無 線 Wi-Fi C. 選 擇 無 線 網 路 名 稱 "edimax.setup"

More information

untitled

untitled 1 DBF (READDBF.C)... 1 2 (filetest.c)...2 3 (mousetes.c)...3 4 (painttes.c)...5 5 (dirtest.c)...9 6 (list.c)...9 1 dbf (readdbf.c) /* dbf */ #include int rf,k,reclen,addr,*p1; long brec,erec,i,j,recnum,*p2;

More information

Sun StorEdge 3000 系列安装、操作和维护手册 (3310)

Sun StorEdge 3000 系列安装、操作和维护手册 (3310) Sun StorEdge 3000 系 列 安 装 操 作 和 维 护 手 册 Sun StorEdge 3310 SCSI 阵 列 Sun Microsystems, Inc. 4150 Network Circle Santa Clara, CA 95054 U.S.A. 650-960-1300 部 件 号 816-7960-11 2003 年 6 月, 修 订 版 A 有 关 本 文 档 的

More information

Applied Biosystems StepOne™ Real-Time PCR System Quick Reference Card for Installation

Applied Biosystems StepOne™ Real-Time PCR System Quick Reference Card for Installation Applied Biosystems StepOne Real-Time PCR System StepOne 系统安装 快速参考卡 本文档提供在并置布局中安装 StepOne 系统的简明指导 有关 完整步骤或独立安装步骤 请参阅 Applied Biosystems StepOne Real-Time PCR System 安装 联网和维护指南 目录 1. 安装准备........................................

More information

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344>

<4D F736F F D D342DA57CA7DEA447B14D2DA475B57BBB50BADEB27AC3FEB14DA447B8D5C344> 1. 請 問 誰 提 出 積 體 電 路 (IC) 上 可 容 納 的 電 晶 體 數 目, 約 每 隔 24 個 月 (1975 年 更 改 為 18 個 月 ) 便 會 增 加 一 倍, 效 能 也 將 提 升 一 倍, 也 揭 示 了 資 訊 科 技 進 步 的 速 度? (A) 英 特 爾 (Intel) 公 司 創 始 人 戈 登. 摩 爾 (Gordon Moore) (B) 微 軟 (Microsoft)

More information

Microsoft Word - (web)_F.1_Notes_&_Application_Form(Chi)(non-SPCCPS)_16-17.doc

Microsoft Word - (web)_F.1_Notes_&_Application_Form(Chi)(non-SPCCPS)_16-17.doc 聖 保 羅 男 女 中 學 學 年 中 一 入 學 申 請 申 請 須 知 申 請 程 序 : 請 將 下 列 文 件 交 回 本 校 ( 麥 當 勞 道 33 號 ( 請 以 A4 紙 張 雙 面 影 印, 並 用 魚 尾 夾 夾 起 : 填 妥 申 請 表 並 貼 上 近 照 小 學 五 年 級 上 下 學 期 成 績 表 影 印 本 課 外 活 動 表 現 及 服 務 的 證 明 文 件 及

More information

HP LJ 4000 UG - ZHTW

HP LJ 4000 UG - ZHTW HP LaserJet 4000 4000 T 4000 N 及 4000 TN 雷 射 印 表 機 使 用 者 手 冊 版 權 所 有 惠 普 公 司 (Hewlett-Packard Company)1997 年 版 權 保 留 除 版 權 法 允 許 的 範 圍 之 外, 未 經 事 先 書 面 許 可, 不 得 複 製 修 改 或 翻 譯 本 手 冊 出 版 號 碼 C4118-90915

More information

2

2 2 3 1 2 3 9 bk 8 7 4 5 6 bn bm bl 1 2 3 4 5 6 7 8 9 p bk bl bm bn bo bo bp bq bq bp 1 2 8 . 1 2 3 4 5 6 bs 7 br 8 bq 9 bp bk bo bn bm bl 1 2 3 4 5 6 7 8 9 cm cl ck bt bk bl bm bn bo bp bq br bs bt

More information

WinMDI 28

WinMDI 28 WinMDI WinMDI 2 Region Gate Marker Quadrant Excel FACScan IBM-PC MO WinMDI WinMDI IBM-PC Dr. Joseph Trotter the Scripps Research Institute WinMDI HP PC WinMDI WinMDI PC MS WORD, PowerPoint, Excel, LOTUS

More information

ebook

ebook 3 3 3.1 3.1.1 ( ) 90 3 1966 B e r n s t e i n P ( i ) R ( i ) W ( i P ( i P ( j ) 1) R( i) W( j)=φ 2) W( i) R( j)=φ 3) W( i) W( j)=φ 3.1.2 ( p r o c e s s ) 91 Wi n d o w s Process Control Bl o c k P C

More information