Visual Fortran Composer XE
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 2
https://registrationcenter.intel.com/regcenter/ w_fcompxe_all_jp_2013_sp1.1.139.exe Visual Fortran Composer XE Windows* Visual Fortran IA -32 XE / 14.0 64 ( MKL) 11.1 Microsoft Visual Studio 2010 Shell 3 2014 XLsoft Corporation.
Fortran FORTRAN 77 Compaq Fortran 77 Fortran 90 Fortran 95 Fortran 2003 I/O v14.0 Fortran 2008 Coarray CONTIGUOUS ALLOCATE MOLD DO CONCURRENT OPEN NEWUNIT G0 G0.d OpenMP 3.1 OpenMP 4.0 v14.0 Xeon Phi SIMD 4 2014 XLsoft Corporation.
MKL BLAS Basic Linear Algebra Subprograms ( 1) ( 2) ( 3) BLAS Sparse BLAS 1 2 3 sparse / LAPACK Linear Algebra PACKage ScaLAPACK Scalable Linear Algebra PACKage DFT Discrete Fourier Transform DFT DFT PARDISO DSS ISS VML Vector Math Library libm VSL Vector Statistical Library 5 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 6
https://registrationcenter.intel.com/regcenter/ Visual Fortran Composer XE / Visual Studio Shell w_fcompxe_all_jp _<version>.exe 7 2014 XLsoft Corporation.
8 2014 XLsoft Corporation.
[X86 OS] C: Program Files Common Files Intel Licenses [X64 OS] C: Program Files (x86) Common Files Intel Licenses 9 2014 XLsoft Corporation.
Intel Parallel Studio XE 2013 Intel Software Manager Command Prompt Documentation Getting Started Tutorial (R) XE Visual Studio 10 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 11
*.f90 *.for *.obj IDE GUI ( IDE ) Microsoft* Visual Studio* Microsoft* RTL Visual C++* *.exe *.dll IDE Visual Studio 2008 Visual Studio 2010 Visual Studio 2012 Visual Studio 2008 Shell Visual Studio 2010 Shell 12 2014 XLsoft Corporation.
Visual Studio* Windows* Visual Fortran 13 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 14
Windows* Windows* (Path / Include / Lib) ( ) < > bin ipsxe-comp-vars.bat intel64 vs2010 15 2014 XLsoft Corporation.
> ifort [] file1 [file2... 16 2014 XLsoft Corporation.
17 1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10.
Visual Studio 18 2014 XLsoft Corporation.
vfproj sample.vfproj sln sample.sln.exe dll. 19 2014 XLsoft Corporation.
VS [ (F)]>[ (N)]>[ (P)] Visual Fortran -.exe 20 2014 XLsoft Corporation.
21 2014 XLsoft Corporation.
22 2014 XLsoft Corporation.
23 2014 XLsoft Corporation.
24 2014 XLsoft Corporation.
25 2014 XLsoft Corporation.
[ (P)] > [ (P)] [ (P)] 26 2014 XLsoft Corporation.
27 2014 XLsoft Corporation.
Debug Release 28 2014 XLsoft Corporation.
Win32 32bit 64bit Windows x64 64bit 32bit Windows Debug Release 29 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 30
Visual Studio Debug [ ] [ Debug debug:full / 31 2014 XLsoft Corporation.
[ (D)] 32 2014 XLsoft Corporation.
[ (D)] 33 2014 XLsoft Corporation.
/traceback 34 /check: 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 35
Windows Linux / Mac OS HLO /O3 -O3 IPO /Qipo -ipo /Qprof-gen -prof-gen PGO /Qprof-use -prof-use /arch:code /Qxcode /Qaxcode -mcode -xcode -axcode /Qparallel -parallel GAP /Qguide[n] -guide[n] /Qprofile-functions /Qprofile-loops:<arg> / -profile-functions -profile-loops=<arg> SA /Qdiag-enable:sc[n] -diag-enable sc[n] /fp:keyword -fp-model keyword 36 2014 XLsoft Corporation.
SIMD(Single Instruction Multiple Data) do i = 1, max c(i) = a(i) + b(i) end do [ ] [ SIMD ] 1 1 1 SSE/AVX XMM/ a(i) + b(i) c(i) a + b c a(i+7) a(i+6) a(i+5) a(i+4) a(i+3) a(i+2) a(i+1) a(i+0) + b(i+7) b(i+6) b(i+5) b(i+4) b(i+3) b(i+2) b(i+1) b(i+0) c(i+7) c(i+6) c(i+5) c(i+4) c(i+3) c(i+2) c(i+1) c(i+0) 37 2014 XLsoft Corporation.
SIMD CPU SIMD 1999 70 SSE 2000 144 8/16/32/64/128 SSE2 2004 13 SSE3 2006 32 SSSE3 2007 47 SSE4.1 2009 7 SSE4.2 2011 12 256 AVX 2013 4 Core Haswell AVX2, FMA Fused Multiply-Add 38 2014 XLsoft Corporation.
AVX SIMD 256bit AVX 256 YMM SSE 128 XMM 4x double (64-bit) 2x double(64-bit) 8x float(32-bit) 4x float(32-bit) AVX 39 2014 XLsoft Corporation.
-O2 Windows /arch:<code> /arch:sse2 CPU Windows /Qx<Code> /QxAVX CPU CPU Windows /Qax<Code> /QaxSSSE3 /QaxSSE3,AVX /QxHost <Code> : SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX CORE-AVX-I CORE-AVX2 /arch:sse2 (Windows) /arch /Qx (Windows) 40 2014 XLsoft Corporation.
/arch:sse2 Windows O2 Windows > ifort main.f90 /O2 /arch:sse2 Windows > ifort /QxSSE4.2 main.f90 SSE4.2 SSE4.2 41 Windows > ifort /QaxSSE4.2 main.f90 SSE4.2 /arch:sse2 2014 XLsoft Corporation.
Windows > ifort /QaxAVX /QxSSE4.1 main.f90 AVX /QxSSE4.1 Windows > ifort /QaxAVX /arch:sse3 main.f90 AVX /arch:sse3 Windows > ifort /QaxAVX,SSE4.1 /arch:sse3 main.f90 AVX SSE4.1 SSE4.1 /arch:sse3 42 2014 XLsoft Corporation.
/Qvec-report[n] n 0 6 43 2014 XLsoft Corporation.
44 2014 XLsoft Corporation.
45 OpenMP * /Qparallel /Qpar-report[n] n 0 3 n 3 /Qpar-threshold[n] n 0 100 n 1 2014 XLsoft Corporation.
46 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 47
Compaq* Visual Fortran Compaq Intel Compaq* Visual Fortran Fortran / warn:interfaces 48 2014 XLsoft Corporation.
Compaq* Visual Fortran Compaq Intel Compaq* Visual Fortran Fortran / Qsave /Qzero 49 2014 XLsoft Corporation.
Compaq* Visual Fortran Compaq X87 Intel SSE Compaq* Visual Fortran Fortran / fp:source X87 /arch:ia32 50 2014 XLsoft Corporation.
Compaq* Visual Fortran Compaq Visual Fortran 6.x Visual Fortran Microsoft* Visual Studio* 2010 Shell 51 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 52
Visual Studio [ ] [ ] > 53 2014 XLsoft Corporation.
Visual Studio Visual Studio [ ] [ ] > True F 54 2014 XLsoft Corporation.
55 2014 XLsoft Corporation.
IF THEN END IF DO END DO Ctrl + ] 56 2014 XLsoft Corporation.
Visual Studio [ [ ] > 57 2014 XLsoft Corporation.
58 2014 XLsoft Corporation.
( 59 2014 XLsoft Corporation.
Show callers Graph ShowCall Graph Call Browser 60 2014 XLsoft Corporation.
1. 2. 3. 4. 5. Visual Studio 6. Visual Studio 7. 8. Compaq Visual Fortran 9. Visual Studio 10. 61
*.f90 / *.for / Compiler INCLUDE *.obj LIB libiomp5md.lib Linker *.exe / dll *. PATH * dll 62 2014 XLsoft Corporation.
MKL [Fortran] [ ] [ (R) [ 63 2014 XLsoft Corporation.
64 2014 XLsoft Corporation.
Dependency Walker OpenMP libiom DLL 65 2014 XLsoft Corporation.
Visual Fortran [ x86 ] C: Program Files Common Files Intel Shared Libraries redist [ x64 ] C: Program Files (x86) Common Files Intel Shared Libraries redist Visual Fortran DLL PATH 66 2014 XLsoft Corporation.
u < > Documentation ja_jp fredist.txt < > Documentation ja_jp mkl redist.txt Visual Fortran MKL Visual Fortran http://software.intel.com/en-us/articles/redistributable-libraries-for-the-intel-cand-visual-fortran-composer-xe-for-windows/ 67 2014 XLsoft Corporation.
[X86 OS] C: Program Files Intel Composer XE 2013 SP1 Samples ja_jp Fortran [X64 OS] C: Program Files (x86) Intel Composer XE 2013 SP1 Samples ja_jp Fortran 68 2014 XLsoft Corporation.
Fortran Visual Studio [ ] [ ] > 69 2014 XLsoft Corporation.
70 u Visual Fortran Composer XE 2013 SP1 http://jp.xlsoft.com/documents/intel/fwin/ivf14.0j_install.pdf u Visual Fortran Composer XE 2013 http://jp.xlsoft.com/documents/intel/fwin/ivf13.0_j_gsg.pdf u http://software.intel.com/en-us/articles/redistributable-libraries-for-intel-c-andvisual-fortran-composer-xe-2013-for-windows u Compaq* Visual Fortran Visual Fortran http://jp.xlsoft.com/documents/intel/fwin/porting_applications_from_compaq_visu al_fortran.pdf u OpenMP http://jp.xlsoft.com/documents/intel/compiler/525j-001.pdf http://jp.xlsoft.com/documents/intel/compiler/527j-001.pdf http://openmp.org/wp/openmp-specifications/ 2014 XLsoft Corporation.