fortran66のブログ

fortran について書きます。

【乞食速報】Springer 旧譜電子本千円+税

シュプリンガー・ブック・アーカイブ

www.springer.com

intel fortran Version 2021.1 Beta

また名前の付け方が変わるようです。

coarray の team や failed images に対応。2008 に完全対応したのかもしれません。

program caf0
    use, intrinsic :: iso_fortran_env
    implicit none
    real :: arr[*]
    integer :: me, ne
    type(team_type) :: form1, form2
    ne = num_images()
    me = this_image()

    form team (mod(me, 3) + 1, form1)  
    if (me == 1) print *, 'formation 1' 
    
    change team (form1)
        sync team (form1)
        select case(team_number())
        case (1)
            print *, 'a-team', me, ne
        case (2)
            print *, 'b-team', me, ne 
        case (3)
            print *, 'c-team', me, ne 
        case default
            stop 'never come here' 
        end select
        sync team (form1)
    end team
    
    
    form team (me / 4 + 1, form2)
    sync all
    if (me == 1) print *, 'formation 2' 
    sync all
    
    change team (form2)
        select case(team_number())
        case (1)
            print *, 'team 1', me, ne
        case (2)
            print *, 'team 2', me, ne 
        case (3)
            print *, 'team 3', me, ne
            stop 'form2 3'
        case default
            stop 'never come here' 
        end select
        if (me == 1)print *, 'failed img', failed_images(form2) 
    end team
    sync all
    stop 5*4*3*2*1 
end program caf0
C:\Users\O\source\repos\Console2\Console2>ifort /Qcoarray Console2.f90
Intel(R) Visual Fortran Intel(R) 64 Compiler for applications running on Intel(R) 64, Version 2021.1 Beta Build 20200602
Copyright (C) 1985-2020 Intel Corporation.  All rights reserved.

Microsoft (R) Incremental Linker Version 14.26.28806.0
Copyright (C) Microsoft Corporation.  All rights reserved.

-out:Console2.exe
-subsystem:console
Console2.obj

C:\Users\O\source\repos\Console2>Console2\x64\Release\Console2.exe
 formation 1
 c-team           2           4
 a-team           3           4
 b-team           1           4
 b-team           4           4
 formation 2
 team 2           4           4
 team 1           1           4
 team 1           3           4
 team 1           2           4
 failed img
120
120
120
120