함수 ABI 문서
함수 ABI 문서
GNU Fortran이 coarray(코어레이) 병렬 실행을 구현할 때 쓰는 런타임 라이브러리 함수들의 목록이에요. 이미지 초기화·종료, 이미지 번호 조회, 등록·해제, 원격 접근, 잠금·이벤트, 동기화, 팀 단위 동작까지 coarray 프로그래밍에 필요한 ABI(Application Binary Interface) 함수들이 각각 링크와 함께 정리돼 있어요. 각 항목이 실제로 하는 일을 간단히 요약하면 다음과 같아요.
본문
_gfortran_caf_init— 초기화 함수_gfortran_caf_finish— 종료 함수_gfortran_caf_this_image— 이미지 번호 조회_gfortran_caf_num_images— 최대 이미지 수 조회_gfortran_caf_image_status— 이미지의 상태 조회_gfortran_caf_failed_images— 실패한 이미지의 인덱스 배열 가져오기_gfortran_caf_stopped_images— 정지된 이미지의 인덱스 배열 가져오기_gfortran_caf_register— coarray 등록하기_gfortran_caf_deregister— coarray 등록 해제하기_gfortran_caf_register_accessor— 원격 접근용 접근자(accessor) 등록_gfortran_caf_register_accessors_finish— 접근자 함수 등록 마무리_gfortran_caf_get_remote_function_index— 접근자의 인덱스 가져오기_gfortran_caf_get_from_remote— 원격 측 접근자로 원격 이미지에서 데이터 읽기_gfortran_caf_is_present_on_remote— coarray(또는 그 일부)가 원격 이미지에 할당돼 있는지 확인_gfortran_caf_send_to_remote— 원격 측 접근자로 원격 이미지에 데이터 보내 저장하기_gfortran_caf_transfer_between_remotes— 두 원격 이미지 사이의 데이터 전송 시작_gfortran_caf_sendget_by_ref— 양쪽에서 향상된 참조를 이용해 원격 이미지 사이에 데이터 보내기_gfortran_caf_lock— 잠금 변수 잠그기_gfortran_caf_lock— 잠금 변수 풀기_gfortran_caf_event_post— 이벤트 게시하기_gfortran_caf_event_wait— 이벤트가 발생할 때까지 기다리기_gfortran_caf_event_query— 이벤트 개수 조회_gfortran_caf_sync_all— 전체 이미지 배리어(barrier)_gfortran_caf_sync_images— 선택된 이미지들을 위한 배리어_gfortran_caf_sync_memory— 세그먼트 메모리 연산 완료 대기_gfortran_caf_error_stop— 종료 코드와 함께 오류 종료하기_gfortran_caf_error_stop_str— 문자열과 함께 오류 종료하기_gfortran_caf_fail_image— 이미지를 실패로 표시하고 실행 종료_gfortran_caf_atomic_define— 원자적 변수 대입_gfortran_caf_atomic_ref— 원자적 변수 참조_gfortran_caf_atomic_cas— 원자적 비교 후 교체(compare and swap)_gfortran_caf_atomic_op— 원자적 연산_gfortran_caf_co_broadcast— 모든 이미지로 데이터 보내기_gfortran_caf_co_max— 집합적 최댓값 축소_gfortran_caf_co_min— 집합적 최솟값 축소_gfortran_caf_co_sum— 집합적 합 축소_gfortran_caf_co_reduce— 일반 집합적 축소_gfortran_caf_form_team— 팀 생성 함수_gfortran_caf_change_team— 팀 활성화 함수_gfortran_caf_end_team— 팀 종료 함수_gfortran_caf_sync_team— 주어진 팀의 모든 이미지 동기화_gfortran_caf_get_team— 지정된 팀의 불투명 핸들 가져오기_gfortran_caf_team_number— 주어진 팀의 고유 id 가져오기
더 알아보기
- 이 함수들은 대부분 Fortran의
coarray문법(_gfortran_caf_*)이 컴파일되면서 자동으로 호출돼요. 직접 부를 일은 드물어요. _gfortran_caf_lock은 잠그기와 풀기가 동일한 함수명으로 문서화돼 있어요. 실제 호출이 잠금인지 해제인지는 접근 경로로 구분돼요.- 원격 접근 계열(accessor) 함수들은 분산 공유 메모리 구현에서 성능 최적화를 위해 제공돼요.