インテル(R) Visual Fortran Composer XE 2013 Windows版 入門ガイド

Similar documents
インテル(R) Visual Fortran Composer XE

インテル(R) C++ Composer XE 2011 Windows版 入門ガイド

インテル® Parallel Studio XE 2019 Composer Edition for Windows: インテル® Fortran コンパイラー 入門ガイド

インテル® Parallel Studio XE 2016 Composer Edition for Fortran Windows -入門ガイド-

インテル® Parallel Studio XE 2017 Composer Edition for Fortran -入門ガイド-

Microsoft Word - w_mkl_build_howto.doc

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows : インストール・ガイド

インテル® Parallel Studio XE 2019 Composer Edition for Fortran Windows 日本語版 : インストール・ガイド

01_OpenMP_osx.indd

目次 1 はじめに 製品に含まれるコンポーネント 動作環境... 4 オペレーティング システム... 4 Microsoft Visual Studio* 製品 製品のダウンロード 製品版をインストールする場合 評価版を

インテル® Parallel Studio XE 2017 Composer Edition for Fortran Windows - インストール・ガイド -

nakao

untitled

11042 計算機言語7回目 サポートページ:

- 2 Copyright (C) All Rights Reserved.

Copyright 2009, SofTek Systems, Inc. All rights reserved.

hotspot の特定と最適化

Intel_ParallelStudioXE2013_ClusterStudioXE2013_Introduction.pptx

ハピタス のコピー.pages

Copyright 2008 All Rights Reserved 2

相続支払い対策ポイント

150423HC相続資産圧縮対策のポイント

インテル(R) Visual Fortran コンパイラ 10.0

インテル® Parallel Studio 入門ガイド

インテル Parallel Studio XE 2017 Composer Edition for Fortran Windows* インストール ガイド Rev (2017/06/08) エクセルソフト株式会社

目次 1 はじめに 製品コンポーネント 動作環境 インストールを行う前に 製品版と評価版 製品のインストール手順 製品の登録 製品のダウンロード ライセンスファイルの取得

120802_MPI.ppt

v10 IA-32 64¹ IA-64²

OpenMP¤òÍѤ¤¤¿ÊÂÎó·×»»¡Ê£±¡Ë

Copyright 2008 NIFTY Corporation All rights reserved. 2

OpenMP¤òÍѤ¤¤¿ÊÂÎó·×»»¡Ê£±¡Ë

CUDA 連携とライブラリの活用 2

初心者にもできるアメブロカスタマイズ新2016.pages

やよいの顧客管理

弥生給与/やよいの給与計算

弥生 シリーズ

弥生会計 プロフェッショナル/スタンダード/やよいの青色申告

弥生会計/やよいの青色申告

弥生会計 ネットワーク/プロフェッショナル2ユーザー

main.dvi

Copyright 2006 KDDI Corporation. All Rights Reserved page1

Intel® Compilers Professional Editions

Copyright All Rights Reserved. -2 -!

Microsoft Word - 最終版 バックせどりismマニュアル .docx

2

OpenMP (1) 1, 12 1 UNIX (FUJITSU GP7000F model 900), 13 1 (COMPAQ GS320) FUJITSU VPP5000/64 1 (a) (b) 1: ( 1(a))

2

MKL10.3 Win_UsageGuide

dekiru_asa

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

KDDI

XcalableMP入門

untitled

スパコンに通じる並列プログラミングの基礎

- 2 Copyright (C) All Rights Reserved.

スパコンに通じる並列プログラミングの基礎

2 2.1 Mac OS CPU Mac OS tar zxf zpares_0.9.6.tar.gz cd zpares_0.9.6 Mac Makefile Mekefile.inc cp Makefile.inc/make.inc.gfortran.seq.macosx make

how-to-decide-a-title

Web Microsoft 2008 R2 Database Database!! Database 04 08

情報処理概論(第二日目)

FileMaker Server Getting Started Guide

Oracleコール・インタフェース for Windows スタート・ガイド リリース8.1.6

健康保険組合のあゆみ_top

リバースマップ原稿2

Copyright 2010 Sumitomo Mitsui Banking Corporation. All Rights Reserved.

20 180pixel 180pixel Copyright 2014 Yahoo Japan Corporation. All Rights Reserved.

写真集計くん+ for Mac ユーザーズガイド

スパコンに通じる並列プログラミングの基礎

OpenMP¤òÍѤ¤¤¿ÊÂÎó·×»»¡Ê£²¡Ë


はじめての帳票作成

untitled

Fortran90/95 [9]! (1 ) " " 5 "Hello!"! 3. (line) Fortran Fortran 1 2 * (1 ) 132 ( ) * 2 ( Fortran ) Fortran ,6 (continuation line) 1


プラズマ核融合学会誌5月号【81-5】/内外情報_ソフト【注:欧フォント特殊!】

FFTSS Library Version 3.0 User's Guide

Transcription:

Visual Fortran Composer XE 2013 Windows* エクセルソフト株式会社 www.xlsoft.com Rev. 1.1 (2012/12/10) Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 1 / 53

... 3... 4... 4... 5 Visual Studio... 9... 15... 15... 16... 17... 21... 24... 24... 27 Release... 29... 30... 34... 37... 38... 38 64 64... 39... 41... 43... 45 2G... 47 Compaq* Visual Fortran... 49... 50... 52... 53 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 2 / 53

Visual Fortran Composer XE 2013 Visual Fortran 13.0 MKL Visual Fortran 13.0 Visual Fortran Microsoft* Visual Studio* IDE Visual Fortran 4 Visual Fortran Composer XE 2013 Update1 x86 C: Program Files Intel Composer XE 2013 x64 C: Program Files (x86) Intel Composer XE 2013 Windows 7 Professional x64 64 x86 32 Program Files (x86) Program Files Microsoft Visual Studio 2010* Shell Visual Studio Intel(R) Core(TM) i7-2600 CPU 3.4GHz Sandy Bridge 8 OS Microsoft Windows 7 Professional x64 Intel Visual Fortran Composer XE 2013 Update1 IDE Microsoft Visual Studio 2010* Shell Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 3 / 53

Visual Fortran Zip ja_jp en_us C: Program Files (x86) Intel Composer XE 2013 Samples ja_jp Fortran ipo_samples.zip C: Program Files (x86) Intel Composer XE 2013 Samples en_us Fortran ipo_samples.zip C work C: work ipo_samples.zip ipo_samples 3 ipo_sample_main.f90 ipo_sample_init.f90 ipo_sample_sum.f90 ipo_sample_init.f90 subroutine init(a, n) implicit none integer, intent(in) :: n real, intent(inout) :: a(n) integer :: i do i = 1, n a(i) = real(i) end do end subroutine init ipo_sample_main.f90 program main implicit none real :: res, mysum integer, parameter :: n=1000 real, dimension(n) :: a call init(a, n) res = mysum(a, n) print *, res end program main function add3(x) implicit none real :: add3 real, intent(in) :: x add3 = x + 3. end function add3 ipo_sample_sum.f90 function mysum(a, n) implicit none real :: mysum, add3 integer, intent(in) :: n real, intent(in), dimension(n) :: a integer :: i mysum = 0 do i = 1, n mysum = mysum + a(i) + add3(a(i)) end do end function mysum Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 4 / 53

Visual Fortran ifort 1. Windows [ ] [ ] > [Intel Parallel Studio XE 2013] > [Command Prompt] > [ (R) XE 13.0 Update 1] > [IA-32 Visual Studio 2010 ] Visual Fortran PATH LIB INCLUDE "C: Program Files (x86) Intel Composer XE 2013 bin ipsxe-comp-vars.bat" ia32 vs2010 IA-32 64 Visual Studio IA-32 Visual Studio 2008 IA-32 Visual Studio 2010 IA-32 Visual Studio 2012 64 Visual Studio 2008 64 Visual Studio 2010 64 Visual Studio 2012 IA-32 Visual Fortran Visual Studio 2010 Visual Fortran Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 5 / 53

2. ifort ifort > ifort 3. link link ifort > link Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 6 / 53

link Visual Studio Visual Fortran Note ifort Visual Fortran fortcom.exe link.exe ifort 4. > cd C: work ipo_samples ipo_samples 5. > dir Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 7 / 53

6. ifort > ifort ipo_sample_main.f90 ipo_sample_init.f90 ipo_sample_sum.f90 7. ipo_sample_main.exe 8. 1004000 > ipo_sample_main.exe Note ifort /Fe > ifort ipo_sample_main.f90 ipo_sample_init.f90 ipo_sample_sum.f90 /Fe:Sample.exe Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 8 / 53

Visual Studio Visual Fortran Microsoft Visual Studio Visual Studio Visual Studio 2010 Shell VS2010 Visual Studio Microsoft Visual Studio 1. Windows [ ] [Intel Parallel Studio XE 2013] [Parallel Studio XE 2013 with VS2010] [ ] [Microsoft Visual Studio 2010] [Microsoft Visual Studio 2010] VS2010 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 9 / 53

2. VS2010 [ ] - [ ] - [ ] [ ] [ (R) Visual Fortran] [ ] [ ] Sample C: work ipo_samples ipo_samples [ ] [OK] 3. [ ] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 10 / 53

[ ] [ ] 4. Sample Debug Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 11 / 53

5. VS2010 [ ] - [ Sample ] [ ] [ ] Note Debug Release Debug Release Debug Release Note Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 12 / 53

6. VS2010 [ ] - [ ] 1004000 7. [ ] [ ] Debug Debug Sample.exe Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 13 / 53

Sample.sln Sample.vfproj Sample.sln Visual Studio Note.vfproj.sln Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 14 / 53

Visual Studio Visual Studio Debug 2 Visual Studio VS2010 [ ] - [ ] [ ] [ ] [ ] [Fortran] [ ] [ ] [OK] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 15 / 53

VS2010 [ ] [ / ] 48 call init(a, n) [ ] [ / ] [ ] F9 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 16 / 53

[ ] [ ] F5 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 17 / 53

Visual Studio [ ] F5 F11 F10 1 Shift+F11 1 50 print [ ] [ ] F5 print F5 [ ] [ ] F5 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 18 / 53

[ ] [ ] F5 call init(a, n) [ ] [ ] F11 init [ ] [ ] F10 F10 do a end do end do Shift+F10 n 1000 [ ] [ ] Shift+F11 init main init mysum print mysum Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 19 / 53

mysum mysum do add3 mysum Visual Studio add3 end function add3 [ ] [ ] [ ] F5 program main [ ] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 20 / 53

init call init(a, n) Visual Studio [ ] A RES RES A A REAL(4) Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 21 / 53

init init N 1000 do 1000 I do I 1 I do A init main a a Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 22 / 53

mysum print print RES RES 1004000 RES [ ] 1005000 RES print 1005000 Visual Studio [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 23 / 53

Visual Fortran Microsoft Visual Studio 2010* Shell VS2010 matmul program matmul implicit none integer, parameter :: SIZE = 2048 real,dimension(size,size) :: a,b,c real*8 clock_start, clock_end integer i, j, k real*8 dclock write (*, '(/,A,I0,/)') "<Matmul 計算開始 > SIZE = ", SIZE clock_start = dclock()! 初期化処理 do i=1, SIZE do j=1, SIZE a(j,i) = 1.0 b(j,i) = i c(j,i) = 0.0 end do end do! 行列積和演算 do i=1, SIZE do k=1, SIZE do j=1, SIZE c(j,i) = c(j,i) + a(k,i) * b(j,k) end do end do end do clock_end = dclock() write (*,*) " 計算結果 = ", c(size, SIZE) write (*,*) " 計算時間 = ", (clock_end - clock_start), "[ 秒 ]" write (*,*) "" end program matmul Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 24 / 53

2048 2048 a b c 3 a b c dclock matmul Visual Studio 1. Visual Studio Visual Studio 2. VS2010 [ ] - [ ] - [ ] [ ] [ ] [ ] matmul C: work [ ] [OK] 3. matmul [ ] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 25 / 53

4. [Fortran.f90 ] matmul.f90 [ ] 5. matmul matmul.f90 matmul Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 26 / 53

6. matmul Debug Visual Studio Debug Core i7 2 SIZE Debug Release 2 Debug Release Debug Release [ ] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 27 / 53

matmul Debug Visual Studio Debug Debug [ ] [Fortran] Visual Fortran Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 28 / 53

Release Release Debug Release Debug Release Release Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 29 / 53

Debug Release [ ] [ ] Debug /Od Release /O2 Debug Release /Od /O2 SIMD SIMD Single Instruction Multiple Data a b c max 1 1 max SIMD 1 1 max / 4 do i = 1, max end do c(i) = a(i) + b(i) SIMD SIMD Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 30 / 53

SIMD CPU SSE SSE2 SSE3 SSSE3 SSE4.1 SSE4.2 AVX AVX2 1 Core i SSE4.1 4.2 Core i AVX AVX2 Core i7-2600 Core i AVX [Fortran] [ ] [ ] PC /QxHost PC /QxHost /QxAVX /QxHost /QxHost PC PC PC CPU Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 31 / 53

[ ] [ ] 2 /Qvec-report2 /QxHost /Qvec-report2 [ ] 2 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 32 / 53

Release AVX Note Release /arch:sse2 /QxHost /Qvec-report2 /arch:sse2 /O2 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 33 / 53

/Qparallel [Fortran] [ ] [ ] /Qparallel [ ] [ ] /Qpar-report2 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 34 / 53

[ ] Note Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 35 / 53

CPU SIZE SIZE = 4096 8 CPU 100% Note remark: /Qpar-threshold:n 100 /Qpar-threshold:100 /Qpar-threshold:90 Visual Studio [Fortran] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 36 / 53

Release /O2 /O3 /O2 CPU [Fortran] [ ] [ ] /O3 /O3 [Fortran] [ ] [ ] /Qopt-report:3 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 37 / 53

Visual Fortran.for.f.fpp.f90 prog.for prog.f prog.fpp prog.f90 Visual Studio [ ] [ ] [ ] [ (R) Composer XE] [Visual Fortran] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 38 / 53

64 64 64 64 G 64 32 64 Windows OS 64 Visual Fortran 64 Windows [ ] [ ] > [Intel Parallel Studio XE 2013] > [Command Prompt] > [ (R) XE 13.0 Update 1] > [ (R) 64 Visual Studio 2010 ] 64 64 Visual Studio 64 64 Win32 [ ] [ ] [ ] [ ] Debug Release [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 39 / 53

[ ] < > [ ] x64 [OK] [ ] Visual Studio x64 64 64 [Fortran] [ ] [ ] [ ] 64 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 40 / 53

Fortran Unknown /traceback Visual Studio [Fortran] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 41 / 53

/traceback [ ] [ ] [ ] /traceback Fortran [Fortran] [ ] [ ] [ ] [ ] Note Fortran Fortran [ ] > [ ] > [ ] > [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 42 / 53

PC PC Visual Fortran OpenMP PC Dependency Walker Dependency Walker MATMUL.EXE 3 LIBIOMP5MD.DLL DLL LIBIOMP5MD.DLL Visual Fortran OpenMP OpenMP PC PC Visual Fortran fredist.txt C: Program Files (x86) Intel Composer XE 2013 Documentation en_us fredist.txt LIBIOMP5MD.DLL PC Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 43 / 53

Visual Fortran C: Program Files (x86) Intel Composer XE 2013 redist ia32 compiler 32 C: Program Files (x86) Intel Composer XE 2013 redist intel64 compiler 64 PC PATH https://registrationcenter.intel.com/ w_fcompxe_redist_msi_2013.x.xxx.zip X PC 2 32 64 w_fcompxe_redist_ia32_2013.1.119.msi 32 w_fcompxe_redist_intel64_2013.1.119.msi 64 PATH C: Program Files (x86) Common Files Intel Shared Libraries redist PC Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 44 / 53

StackOverflow.f90 program main implicit none call calc(1000000) contains subroutine calc(n) integer, intent(in) :: n integer, dimension(n) :: a, b a = 4 b = 4 a = a + b print *, "sum=", sum(a) end subroutine calc end program main MAIN 3 calc a 1M 4 a b 1,000,000 8M Visual Studio [ ] [ ] [ ] Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 45 / 53

10000000 10M Note > ifort /F10000000 StackOverflow.f90 /heap-arrays [Fortran] [ ] [ ] 0 /heap-arrays a b allocate program main implicit none call calc(1000000) contains subroutine calc(n) integer, intent(in) :: n integer, dimension(n) :: a, b a = 4 b = 4 a = a + b print *, "sum=", sum(a) end subroutine calc end program main program main implicit none call calc(1000000) contains subroutine calc(n) integer, intent(in) :: n integer, dimension(:), allocatable :: a, b allocate(a(n), b(n)) a = 4 b = 4 a = a + b print *, "sum=", sum(a) end subroutine calc end program main Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 46 / 53

2G 2G 64 32 64 2G BigData.f90 4 a 500,000,000 2G program bigdata implicit none integer,dimension(500000000) :: a a(1) = 1 print *, "a(1)=", a(1) end program bigdata x64 Windows OS 32 64 2G Visual Fortran 2G a allocate program bigdata implicit none integer,dimension(500000000) :: a a(1) = 1 print *, "a(1)=", a(1) end program bigdata program bigdata implicit none integer,allocatable,dimension(:) :: a allocate( a(500000000) ) a(1) = 1 print *, "a(1)=", a(1) end program bigdata 64 64 Windows OS Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 47 / 53

16.0 G 16.1 G [ ] [ ] [ ] 32G a 7,800,000,000 32G program bigdata implicit none integer,allocatable,dimension(:) :: a allocate( a(7800000000) ) a(1) = 1 print *, "a(1)=", a(1) end program bigdata Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 48 / 53

Compaq* Visual Fortran Visual Fortran IVF Compaq* Visual Fortran CVF CVF CVF Visual Fortran CVF IVF http://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran 3 CVF IVF CVF IVF [Fortran] [ ] [ ] CVF 0 IVF [Fortran] [ ] [ ] /Qsave CVF x87 IVF SSE [Fortran] [ ] [ ] /fp:source [Fortan] [ ] [ ] /arch:ia32 Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 49 / 53

Windows [ ] Getting Started MKL Visual Studio [ ] (R) Visual Fortran Composer XE 2013 Visual Studio F1 [ ] F1 Visual Fortran Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 50 / 53

F1 Visual Fortran > ifort /help Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 51 / 53

x86 C: Program Files Intel Composer XE 2013 Documentation x64 C: Program Files (x86) Intel Composer XE 2013 Documentation en_us ja_jp 2 en_us ja_jp en_us Visual Fortran x86 C: Program Files Intel Composer XE 2013 Samples ja_jp Fortran x64 C: Program Files (x86) Intel Composer XE 2013 Samples ja_jp Fortran Fortran DLL C Fortran Fortran C VB Fortran DLL OpenGL* OpenMP Fortran 2008 Co-array QuickWin samples.htm Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 52 / 53

Visual Fortran OpenMP https://www.xlsoft.com/jp/services/xlsoft_form.html Visual Fortran Composer XE 2013 Windows http://www.xlsoft.co.jp/jp/products/intel/compilers/fcw/index.html Visual Fortran Composer XE 2013 Windows http://www.xlsoft.co.jp/jp/products/intel/compilers/fcw/index.html?tab=4 OpenMP* http://jp.xlsoft.com/documents/intel/compiler/525j-001.pdf Fortran OpenMP* http://jp.xlsoft.com/documents/intel/compiler/527j-001.pdf http://jp.xlsoft.com/documents/intel/compiler/528j-001.pdf isus Fortran http://www.isus.jp/tag/fortran/ Compaq* Visual Fortran http://software.intel.com/en-us/articles/migrating-from-compaq-visual-fortran Windows* http://software.intel.com/en-us/articles/memory-limits-applications-windows http://www.xlsoft.com/jp/products/intel/tech/books.html Parallel Studio XE 2013 http://jp.xlsoft.com/documents/intel/xe/parallelstudioxe2013j_gsg.pdf Copyright 1998-2013 XLsoft Corporation. All Rights Reserved. 53 / 53