== Progress ==
* Back to work part-time (50%) for the next 3 weeks
* Easter Monday (1/5)
* (No Jira card - 2/5)
Analyzed at GCC trunk validations and reported some regressions.
The current commit rate is very high since stage1, and our compute
farm isn't fast enough. Should be OK after the week-end.
Modified my scripts so that I move these validations out of Jenkins.
* (No Jira card - 2/5)
Continued converting Neon intrinsics tests for inclusion in GCC testsuite.
To make the review easier, I now believe that it would be better that
I convert most of the testsuite first, and rework the patches order.
* Meetings and conf calls(1/5)
== Next ==
* Continue to closely monitor GCC trunk validations
* Neon intrinsics tests
* Off Thursday/Friday next week
=== Previous ===
libvpx NEON intrinsics investigation [TCWG-429 14/10]
. if interested, you can read the report in card 429:
https://cards.linaro.org/browse/TCWG-429?focusedCommentId=22247
tested division optimisation patches against current trunk and pinged
on list [2/10]
good friday bank holiday [2/10]
=== Next ===
Resume looking at NEON scheduling TCWG-135, which ties into libvpx
Upgrade laptop to Ubuntu 14.04 LTS
== Progress ==
* GDB reverse debugging on aarch64
-- Scored through a64 instruction set details. [1/10]
-- Completed testing and implementation of all basic structures.
[TCWG-398] [1/10]
-- Started decoding aarch64 load store instructions for recording.
[TCWG-401] [2/10]
-- Completed decoding of aarch64 branch instructions. [TCWG-400] [2/10]
-- Scored through a32 instruction set and researched on a32 recording.
[2/10]
* Miscellaneous [2/10]
-- UK visa application process
-- Tools cauldron and TCWG sprint bookings etc.
-- Meetings
== Plan ==
* GDB reverse debugging on aarch64
-- Complete decoding of aarch64 load store instructions. [TCWG-401]
-- Completed decoding of aarch64 exception and system instructions.
[TCWG-400]
== Progress ==
PGO - AArch64 (TCWG-179) (4/10)
* Completed SPEC runs -O3 -mcpu=cortex-a57 in chroot + qemu
arm64-saucy with Linaro release source (4.8) march 2014.
* Built Linaro 4.9 GCC branch based tool chain under chroot + qemu arm64-saucy
* Created a PGO config file for aarch64 as a peak configure and use --tune=peak
SPEC gave warning that FDO cannot be used as base flags and will
ignore the flags.
Also setting basepeak = yes gave issues and ran base runs and
setting it to no does both base and peak runs
* Started SPEC2006 runs for PGO under chroot + qemu arm64-saucy
* Perlbench train run failed in qemu.
* Other benchmarks are progressing.
GLIBC Systemtap (2/10)
* Ran glibc make check under qemu. Seen some illegal instructions and
ntpl tests hung in qemu aarch64. Will has completed these tests in
hardware.
Misc (2/10)
* Tested cbuildv2 to build gcc natively under qemu-arm64-chroot-ubuntu-saucy.
git gave issues not able to clone and hangs when downloading
binutils and gdb repos.
* 17th was Public Holiday (2/10)
== Plan ==
* Go through the results for SPEC2006 PGO runs.
* Start functional PGO runs for SPEC2000
* Bug fixing.
== Issues ==
* Toolchain64 disk full
== Progress ==
* Linaro GCC 4.9 2014.04 (3/10)
- Created FSF Linaro 4.9 branch
- Testing FSF 4.9.0 RC
* Launchpad bugs: (3/10)
o LP #1169164 : including signal.h exposes various PSR_MODE #defines
- Two possible ways to fix the issue (to be discussed with maintainers)
* Misc:
o Cbuildv1 baby-sitting (1/10)
o Various meetings (1/10).
== Next ==
- Easter Monday off
- Continue on LP #1169164
- Linaro GCC 4.9 release (when FSF release will be made)
== Week of April 14th ==
- Benchmarked autoprefetcher patches. (TCWG-388, 2/10)
- Continued working on spec2xxx-utils scripts. These are now gaining support for AArch64 and SPEC2006. (TCWG-238, 4/10)
- Various discussions. (2/10)
- Short week due to Good Friday / Easter. (2/10)
== Week of April 21st ==
- Take Tyler B.'s LAVA test definition for SPEC benchmarking and adjust spec2xxx-utils scripts to match LAVA environment.
- Investigate regressions on gap, eon and wupwise from autoprefetcher patches.
-- SPEC2000's gap in particular is sensitive to 1st scheduling pass with register pressure, and, apparently has a 5% performance improvement potential (at -O2 Cortex-A15).
- Various discussions.
- Even shorter week due to Easter Monday and ANZAC Day on Friday. (4/10)
--
Maxim Kuvyrkov
www.linaro.org
== Progress ==
* TCWG-238 (4/10)
- Created scripts and spectools for spec2006 to work with cbuild2
* TCWG-413 Spec2006 (4/10)
- Worked out Spec2006 config and src.alt for v1.1 src we have to work
correctly
- Got it to work natively with Maxim's scripts
- Did a trail run in apm openembedded; Needs ccrypt, tar with xz
compression support and system binutils with -mabi=ilp64 support
* 18th is Public Holiday (2/10)
== Plan ==
Benchmarking and FENV support
== Progress ==
* Attempted to get qemu-aarch64 working, fails on saucy, works on
precise. Did native build, hung during 'make check'. Setup
qemu-aarch64 chroot on all TCWG x86_64 build farm
machines. (4/10)
* Tracked down problem that's kept TCWG Jenkins from
working. (1/10)
* Tried Kugan's benchmarking branch of cbuildv2. (1/10)
* More work on Neon intrinsics tests. (TCWG-322 - 1/10)
* Meetings and Misc (3/10)
- Worked on benchmarking doc with Ryan.
== Plan ==
* Get Jenkins working with matrix builds so we can utilize all LAVA
slaves.
* More experimenting with Kugan's benchmarking branch.
== Issue ==
* None.
== Progress ==
* multilib can not work with multiarch anymore, so change Linaro
crosstool-ng to make 2014.04 release (2/10).
- For 4.8 release, we will revert the change and keep it align with
previous releases.
* Linaro 4.9 toolchain binaries pre-releases (Cross & native) for
aarch64 (2/10):
http://cbuild.validation.linaro.org/binaries/4.9-prerelease-2014.04.
* Try to set up native spec2006 tests on Chromebook. But got "out of
memory" when building the tools (1/10).
* Clean up and test for shrink-wrap enhancement (TCWG-133: 2/10)
* Rebase the aarch64 fcsel patch and testing. (1/10)
* ARM internal work (2/10)
== Plans ==
* Send the shrink-wrap related patches for review.
* PING the pending patches.
== Planed leaves ==
* April 21: Team event.
* May 1-3: Labour day holiday.
== This week ==
- Resolved Launchpad bug 1305042 as user error and provided proper asm
coding [TCWG-290] [2/10]
- Investigated infinite loop bug [TCWG-290][6/10]
- Determined the infinite loop is occurring in function
vt_find_locations in the variable tracking pass
- Still debugging to determine cause of infinite loop
- Absent due to illness on April 14th
== Next week ==
Vacation
== Future ==
Getting the following cross compiling for RPi on Debian Wheezy x64 using
the gcc-linaro-arm-linux-gnueabihf-raspbian toolchain within Eclipse
Kepler. Compilation works fine using native Debian x64 GCC and native
GCC compiler on the RPi.
out of dynamic memory in yy_create_buffer()
collect2: error: ld returned 2 exit status
make: * [cwebsocket] Error 1
I'm stumped. Can't find much info on the issue. Any ideas?
== Progress ==
* One bank holiday, half day childcare (3/10)
* Submit two iterations of malloc microbenchmark for glibc (4/10, TCWG-160)
* Submitted a patch for aarch64 ld bug with SystemTap notes (1/10)
* Investigated strcmp implementations for ARM (1/10, TCWG-153)
* Patch review, bugs, support, etc. (1/10)
== Issues ==
* None
== Plan ==
* malloc benchmarking/implementation work
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
TCWG-156 cortex-strings memset (3/10)
* Got a full set of benchmarks (for my 2 targets)
* Cleaned up code
* Sped up small memsets (for A9, A15 results pending)
glibc performance bug in lowlevellock.c (1/10 - I'll make a card next week)
* Learned to build and test glibc
* Understood the bug and worked out how to fix
Misc
* Meetings/mail (1/10)
* Infrastructure/workflow fiddling (1/10)
* 2 days holiday
== Plan ==
More TCWG-156
Finish off glibc performance bug
Public holidays Friday & Monday
== Week of April 7th ==
- Made a how-to wiki page/script on how to use QEMU and schroot for system emulation (TCWG-179, 2/10).
-- This allows you to get armhf or armel or aarch64 Ubuntu or Debian system within minutes, e.g., for PGO or LTO bootstraps of GCC.
-- https://collaborate.linaro.org/display/TCWG/ARM+ubuntu+chroot+with+QEMU+use…
-- I can move this page into public wiki if get enough interest from non-Linaro people.
- Fixed various bugs in instruction scheduling patch set (TCWG-388, 5/10).
- Scripted running SPEC2000 for reproducible benchmarking (TCWG-238, 3/10).
-- The scripts are now at http://git.linaro.org/toolchain/spec2xxx-utils.git
-- Scripts support both local (native) and remote (cross) benchmarking.
== Week of April 14th ==
- Document spec2xxx-utils scripts and see how they fare in LAVA environment. Add support for SPEC2006. (TCWG-238)
- Post autoprefetcher patch set upstream (TCWG-388)
--
Maxim Kuvyrkov
www.linaro.org
== Week of March 31st ==
- Investigated and scripted how to reproducibly run benchmarks (TCWG-238, 7/10)
-- Stop all services on target board
-- Use local disk
-- Stop networking
-- Bind benchmark to a specific CPU. Bind all other processes to a different CPU.
-- Disable frequency scaling.
- Various discussions (3/10)
--
Maxim Kuvyrkov
www.linaro.org
PGO - AArch64 (TCWG-179) (4/10)
* Installed QEMU user static for aarch64 and use them from
chroot environment in ubuntiu 13.10
* Tried installing chroot + qemu arm64-saucy in another ubuntu 12.04
machine. Issue with binfmts. looks to be corrupted.
* Bootstrap GCC with PGO with --enable-languages=c,c++,fortran
completed under arm64-chroot.
* Built GCC and binutils in native mode under chroot + qemu arm64-saucy .
* SPEC runs -O3 -mcpu=cortex-a57 in chroot + qemu arm64-saucy with
linaro release source (4.8).
Calculix did not finish under chroot + qemu arm64-saucy
GLIBC Systemtap (4/10)
* Built systemtap under chroot + qemu arm64-saucy. Built glibc with
the patch and used --enable-systemtap.
* Able to see setjmp probe in gdb, but longjmp probes not loading.
Tried debugging in gdb. gdb debugging support not available yet under
qemu.
* Discussed with Will newton on my observation.
Bug fix (1/10)
* Not much progress continued looking at reload dumps.
Misc (1/10)
* Tested cbuildv2 to build gcc natively under qemu-arm64-chroot-ubuntu-saucy.
cbuildv2 reports configure error for gcc and g++multilibs. But they
are not needed for native builds. Sent note to Rob for fixing it.
* Attend 1-1 with Ryan
* Attend 1-1 with Maxim discuss PGO work.
== Plan ==
PGO runs for SPEC2006 on chroot + qemu arm64-saucy
Upstream /testing for systemtap probes in glibc
Reload bug fix.
Leave: 17-Apr local state election.
== Progress ==
* GDB reverse debugging on aarch64 [6/10] [TCWG-398]
-- Setup development tree and debug environment.
-- Verified generic reverse debugging implementation aarch64.
-- Implemented main function stubs to catch instruction for decoding
and recording.
* Work on gdb testing utility [TCWG-96] [1/10]
-- Some tweaks to scripts and wiki updates.
* Experimented gdb testing/debugging with Aarch64 QEMU + Chroot [3/10]
== Plan ==
* GDB reverse debugging on aarch64 [TCWG-398]
-- Implement main instruction decoding handler and write function
stubs for different types of instructions.
-- Dig deeper into aarch32 for handling it through armv7
implementation if possible.
== Progress ==
TCWG-156 cortex-strings memset (5/10)
* Fixed a couple of bugs in the no-VFP case
* Ran benchmarks, discarded broken benchmarks, ran more benchmarks
* Explored benchmarking scripts
* Took a hard look at the memset tests
* Experimented with ARM-internal cortex-strings benchmark (not useful right now)
Misc
* Meetings (1/10)
* Kicked an A15 target until it worked (1/10)
* 1/2 day holiday
== Plan ==
More TCWG-156
Maxim's glibc starter issue
Holiday Tuesday
Public Holidays Friday & next Monday
1 day off (Child care)
== Issues ==
* Toolchain64 disk full
== Progress ==
* Released Linaro GCC 4.7 and 4.8 2014.04 (5/10)
* Launchpad bugs: (1/10)
o LP #1169164 : including signal.h exposes various PSR_MODE #defines
- rebased and rework patch
* Misc:
o Cbuildv1 baby-sitting (1/10)
o Various meetings (1/10).
== Next ==
- Continue on LP #1169164
- Linaro GCC 4.9 release
== Issue ==
* None
== Progress ==
* 2 day off.
* Investigate lp:1304267 and close it as invalid.
* Investigate shrink-wrap bootstrap issues [4/10, TCWG-133]
- Re-implement the copy propagate part by referring cprop_hardreg pass.
- Other tests are ongoing.
* Document cross-native build on wiki:
https://wiki.linaro.org/WorkingGroups/ToolChain/cross-native
== Plans ==
* Send the shrink-wrap related patches for review.
* PING the pending patches.
== Planed leaves ==
* April 21: Team event.
* May 1-3: Labour day holiday.
== Progress ==
* TCWG-413 Spec2006 (6/10)
- Setup chroot for aarch64
- Created rootfs with 4.8/trunk and spec2006
- booted created rootfs on foundation model with ubuntu kernel
* TCWG-291 CRC (3/10)
- posted vrp patch upstream
- with that seeing expected performance improvement
- analysing crc complete and up-streaming activities pending
* LP1301335 and PR59695 back-porting (1/10)
== Plan ==
Benchmarking and FENV support
Dear Sir,
Thanks for you page. it is really very helpful to us.
We are facing a problem during compiling GCC for our ARMv7-a Cortex-a9.
We are using following option:
1.
../gcc-linaro*/configure --disable-bootstrap --enable-languages=c,c++
--with-mode=thumb --with-arch=armv7-a --with-tune=cortex-a9
--with-float=hard --with-fpu=vpfv3-d16 --prefix=$home/gcc/gcc-linaro
2.
make -j`getconf _NPROCESSORS_ONLN`
after 2 step we are getting following error:
checking whether putc_unlocked is declared... yes
checking whether getrlimit is declared... yes
checking whether setrlimit is declared... yes
checking whether getrusage is declared... yes
checking whether ldgetname is declared... no
checking whether times is declared... yes
checking whether sigaltstack is declared... yes
checking whether madvise is declared... yes
checking for struct tms... yes
checking for clock_t... yes
checking for F_SETLKW... yes
checking if mkdir takes one argument... no
Unknown CPU given in --with-arch=armv7-a.
make[1]: *** [configure-gcc] Error 1
make[1]: Leaving directory `/home/anwej/src/build'
make: *** [all] Error 2
Please suggest the solution. where is the problem and what will be our next
steps.
Thanks in advance.
-best regards
Anwej Alam
Ph: +91.995.833.3456
Hi,
The preprocessed file:
http://people.linaro.org/~rikuvoipio/qmltextgenerator.ii.gz
With compile command line:
g++ -save-temps -c -g -O2 -fstack-protector --param=ssp-buffer-size=4
-Wformat -Werror=format-security -D_FORTIFY_SOURCE=2 -fvisibility=hidden
-fvisibility-inlines-hidden -Wall -W -D_REENTRANT -fPIC -o x.o
qmltextgenerator.ii
Will take apparently forever (north of 1600min) on a debian native gcc. -O
compiles instantly. Some bisecting for gcc optimization flags later,
disabling strict aliasing allows instant build as well:
g++ -save-temps -c -g -O2 -fno-strict-aliasing -fstack-protector
--param=ssp-buffer-size=4 -Wformat -Werror=format-security
-D_FORTIFY_SOURCE=2 -fvisibility=hidden -fvisibility-inlines-hidden -Wall
-W -D_REENTRANT -fPIC -o x.o qmltextgenerator.ii
Happens with:
gcc version 4.8.2 (Debian 4.8.2-19)
and
gcc version 4.9.0 20140405 (experimental) [trunk revision 209146] (Debian
20140405-1)
Linaro binary cross-compilers are compile the file fine with -O2.
do we do native gcc testing, or should it be just submitted upstream
bugzilla?
Riku