- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Everyone:
Following code can be compiled without any problem on one old Alitx machine 32 CPUs and 256GB; however got errors as below on a new SGI Altix machine with 384CPUs and 1.6TGB.Thanks.
=-==-============= Error -----------------------------
for_init.c:(.text+0xca): relocation truncated to fit: R_X86_64_PC32 against `for__protect_handler_ops'
for_init.c:(.text+0x11b): relocation truncated to fit: R_X86_64_PC32 against `for__protect_handler_ops'
for_init.c:(.text+0x133): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x14d): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_fpe_mask' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x390): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x3b6): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x3e4): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_undcnt' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x3eb): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x40c): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x445): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)
for_init.c:(.text+0x466): additional relocation overflows omitted from the output
for_init.c:(.text+0xca): relocation truncated to fit: R_X86_64_PC32 against `for__protect_handler_ops'for_init.c:(.text+0x11b): relocation truncated to fit: R_X86_64_PC32 against `for__protect_handler_ops'for_init.c:(.text+0x133): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x14d): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_fpe_mask' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x390): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x3b6): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x3e4): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_undcnt' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x3eb): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x40c): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x445): relocation truncated to fit: R_X86_64_PC32 against symbol `for__l_excpt_info' defined in .bss section in /anatools/intel/composerxe-2011.2.137/compiler/lib/intel64/libifcore.a(for_init.o)for_init.c:(.text+0x466): additional relocation overflows omitted from the output------------------------------------------------------------------------------------------
------------ very simple code ----------------------
program main
dimension test(200000, 30000, 10)
real(8) sum
! real(8) test
! open (6, FILE='temp.dat', STATUS='NEW')
write(*,*) 'loop 1 times'
sum = 0.0D0
do i0 = 1, 1
do i = 1, 200000
do j = 1, 10000
do k = 1, 10
test(i, j, k) = 1.0D0
sum = sum + test(i,j,k)
! write(6,*) 1, j, k
end do
end do
end do
end do
! close(6)
write(*,*) sum
end program main
Link Copied
1 Reply
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Permalink
- Report Inappropriate Content
Use
real :: test(:,:,:)
...
allocate(test(200000,30000,10))
The way your program is written when compiled for Intel64 or IA32 the array test will be placed in the static data block (.bss). The linker has a restriction of 2GB for any "segment" (static data, code, etc...). Therfore use allocatable arrays (or heap arrays).
Jim Dempsey

Reply
Topic Options
- Subscribe to RSS Feed
- Mark Topic as New
- Mark Topic as Read
- Float this Topic for Current User
- Bookmark
- Subscribe
- Printer Friendly Page