cbuild2 benchmarking - TCWG-360 [7/10]
* Cleaned up and upstreamed some code that works
* Fixed a couple of issues raised by LAVA people
** No longer scraping the logs
** No longer assuming stable IP addresses
lowlevellock.h comments - CARD-341 [1/10]
* Respun based on Carlos' comments
Meetings/mail/etc - [2/10]
=Plan=
cbuild2 benchmarking
* Upstream code-with-fixes
* Write a doc
* Invite people to start using this thing
** Assuming that the storage questions get resolved
* Work through list of tweaks
Get up to speed on glibc vector math thread
== Progress ==
* Investigate a number of bugs in Linaro toolchain (2/10)
- Submitted patches for cbuild build failure with eglibc and i686
- Investigated BZ #675, gdb baud rate issue. Should be fixed by
switch to cbuild
- AArch64 PIE support seems to be ok?
* Submitted a patch to add all missing relocs from AArch64 ABI 1.0 to
binutils (1/10)
* Email, meetings, etc. (1/10)
* More malloc single-thread optimizations (6/10, TCWG-436)
- Patches submitted to the list
== Issues ==
* None
== Plan ==
* More atomics work
* Tidy up and commit malloc app benchmarks
* Out Thursday and Friday for a wedding
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* LR register not used in leaf functions (TCWG-539) (1/10)
Reviewed Jiong's changes.
* bug #412 (2/10)
- Seems to have been fixed but since there is not specific test-case
except that it happens with spec2k gcc, need more work to be entirely sure.
* AArch64 Spec2006 int regression (1/10)
- Looked at bug databases and mailing list archive for more information
* armv3 (bug #85 and bug #410) (2/10)
- Looked at both the outstanding bug to find more information
- proposed using -mno-lra for armv3 after discussion with the team
* Misc (2/10)
- Public holiday (2/10)
- Annual Leave (2/10)
== Plan ==
* zero/sign extension elimination with widening types
== Holidays ==
* 06/10/2014 - Public holiday
* 07/10/2014 and 07/10/2014 - Annual leave
== This week ==
* TCWG-515 - Neon intrinsic testing part 1 (5/10)
- Developed fix for vclz DejaGnu failure
- Tested on ARM hardware
* Linaro bugzilla 602 - gcc 4.7.3 compiler internal error while building
hsail components (1/10)
- Unable to reproduce with either Linaro 4.8 or 4.9
* Linaro Bugzilla 540 - Median of three has unneeded register moves (1/10)
- Results of Triage indicate generated code has improved though still
not optimal
- No plans for further improvement
* Misc. (1/10)
- Completed ARM annual review paperwork
* Out sick Friday, October 3rd (2/10)
== Next week ==
- Full validation testing on vclz bug fix
- Create patch for vclz bug fix and send to gcc-patches list
- Resolve any blocking issues to patch for bugzilla 331
= Progress ==
* Core mark benchmark and report for PGO and PGO + LTO (2/10)
Collected benchmark scores and report sent internally.
Adding PGO benefits coremark. LTO seems to hurt. More runs and profiling
next week. Tired few experiments with -funroll-all-loops and seems to
benefit.
* Misc [2/10]
Internal meeting and 1-1 with Ryan and inline manger.
Revisited and closed PR61442
Short week leave on 29 Sep, 2 and 3rd Oct (6/10).
== Plan ==
* Coremark benchmark and profiling for PGO and PGO + LTO
* Investigate PR 62308
* Setup Cbuildv2 build in internal machine.
== Progress ==
* Fixed test infrastructure bugs (TCWG 1378 - 8/10).
- Installed Foundation Model on all Hetzner machines so
aarch64 bare metal testing works.
- Refactored all board support files to eliminate duplication to
reduce maintainance headaches. Fixed ldflags so now getting
good results.
- Backport job is working good now.
- Worked on Gerrit/Jenkins integration, with the goal of having
the notifications work *after* the test and validation is done.
- More work on optimizing SSH connections by reducing extraneous
commands in the test framework.
- Recreated stable branch from master now that results are much
better.
* Meetings and Misc (2/10)
* Fixed National Park internal wireless network, getting access to
much better bandwidth than the crappy Guest one. :-)
== Plan ==
* Escape Yosemite, hard during a great weather window, and being
the only person in my group with a job...
* Continue fixing remote testing support, merge "boards" branch
into master, then make it stable after more testing.
== Progress ==
Closed bug #405 (not a bug)
NEON load/store
. reworked patches not to do type-punning [9/10]
. investigated alternative ways to solve poor code generation with
array of vector types
Started investigating NEON bugs 403, 418 [1/10]
== Plan ==
NEON load/store - submit new patches, continue upstream discussion
Try out validation infrastructure for my own patches
== Progres ==
* GCC trunk/4.9 cross-validation (CARD-647) (3/10)
- aarch64 address sanitizer tests currently all fail at execution
under qemu because they try to reserve 50GB of memory. Tried to push
the limits with no success so far.
- working on fixing support for testcases generating a shared lib
- newly introduced abi_check for aarch64 fails on my side, probable
testsuite configuration problem.
* Linaro branches
- updated backports spreadsheet
- reviewed backports prepared by Yvan
* Validation (3/10)
- manually running builds+validations to compare master and chroot
branches, see the diffs between static and dynamic libs in terms of
PASS/FAIL, ....
* Neon intrinsics tests (1/10)
- No need to comply to the GNU coding style since it's imported from
and existing testsuite.
- only minor changes requested
- should help having the 1st subset committed soon
* Misc (3/10)
- calls/meetings
- bugzilla admin etc..
cbuild2 benchmarking - TCWG-360 [9/10]
* Knocked off a lot of rough edges
* Now working fairly robustly
lowlevellock.h comments - CARD-341 [4/10]
* Got a bit stuck trying to follow condvar locking
* But wasn't really needed to describe the code in question
LCA [10/10]
LCA recovery day [2/10]
Meetings/mail/etc [5/10]
=Plan=
cbuild2 benchmarking:
* Push upstream for others to look at
* Sort out storage story for benchmark sources and results
* Try to get working on a Juno (in LAVA, therefore on OE)
* Look at our Jenkins scripts with a view to figuring out how to hook in
* Work through list of bits 'n' pieces to fix -
+ Don't scrape logs (bad for server)
+ Don't fail on network timeouts
+ Extra target control knobs - disable ASLR, set a nasty nice value,
maybe hugepages
+ Set appropriate flags automatically for cross-builds
== Progress ==
* Monday off to recover from Connect (2/10)
* Catch up on email (1/10)
* Upstream work (1/10, CARD-341)
- Patch review
* Investigate malloc single-thread optimizations (1/10, TCWG-436)
- More exploratory work on atomics
* Investigate binutils support for full range of AArch64 relocs (1/10)
* Annual leave Thursday and Friday (4/10)
== Issues ==
* None
== Plan ==
* More work on atomics
* Figure out how to make an LLVM cross compiler with gas/ld
--
Will Newton
Toolchain Working Group, Linaro
== Progress ==
* LR register not used in leaf functions (TCWG-539) (2/10)
Posted the patch after regression testing
https://gcc.gnu.org/ml/gcc-patches/2014-09/msg01833.html
* AArch64 Spec2006 int regression (3/10)
- After struggling to boot Juno, found the combination that works
- Ran spec2006 int benchmarks to try reproduce
- waiting for more information to continue
* Launchpad bugs (LP1331112, LP1332640. LP1331126 and LP1320965) (3/10)
- Set-up cbuild2 and spec2k on aarch64 board
- ran aarch32 and aarch64 in aarch64 board with 09.2014
- Updated the bug entries with the results
* Misc (2/10)
- Connect recovery (2/10)
== Plan ==
* 29/09/2014 - Public holiday
* Get back to zero/sign extension with pass to promote operations
== Progress ==
* Connect recovery [6/10]
Very short week short week travel back from connect
22nd - 23rd travel.
25th - sick leave.
* Backport - Bug 676 - CSE did not optimize the redundant cmp
instruction on aarch64 [2/10].
Checked the issue by building latest trunk, linaro branch and by
adding the patch on top of linaro branch . Validated the code
generated at -O2 and it seemed to be optimal and bug does not occur.
Discussed with Christophe and decided to rebackport it along with
211881. It was reverted because of an libjava bug which is fixed in
211881. Used back flip to back port, git review was not automatically
working. So manually amended by adding the change log for combined
backport of revisions 209643 and 211881.
* Misc [2/10]
Prepared notes on LCU14 to AMD team.
Examined spec benchmark in internal Aarch64 hardware for a support issue.
Internal meeting and 1-1 with manager.
== Plan ==
* Coremark benchmark and report for PGO and PGO + LTO
* Get profiles on trunk for PGO and PGO + LTO
* 29/9/2014 - Personal day off
* 2/10/2014 - 3/10/2014- Dusserra Holidays Leave
== Progress ==
* Connect recovery [4/10]
* NEON load/stores (TCWG-516 [5/10])
. initial review of my vldN_lane asm()->__builtin patches is promising
. the other patches for other loads/stores are wrong. Have been investigating
(with upstream) how much bigger the can of worms is.
* Misc [1/10]
. LCA15 travel
. bug investigation (#405)
== Plan ==
* more NEON load/store
Short week, 2 days holiday (4/10)
== Progress ==
* GCC trunk/4.9 cross-validation (2/10)
- reported a few new FAILs
- trying to allocate time to fix new FAILs introduced in the 4.9
branch on devirt-28a.C, mostly because a testsuite configuration
problem.
- fixed reporting of email-driven validations
* AArch64 libsanitizer
- finally committed asan+ubsan support for AArch64!
* Misc (4/10)
* email catch-up
* calls/meetings
* updated backports speadsheet, backlog now > 75
* bugzilla management
== Next ==
* GCC trunk/4.9 cross-validation:
- actually reproduce+propose fixes for a couple of regressions
recently observed
* AArch64 thread sanitizer
* Neon intrinsic tests
* Analyze failures in Backport job in Jenkins
* Analyze differences in validation results between using shared libs
and static libs
I just updated the stable branch to match master, which in my testing
has been reliable and stable. I also changed the following Jenkins jobs
to use the stable branch: Backport, BuildFarm, BinaryRelease, SourceRelease.
Note that now any Jenkins job that runs tests and validates them using
the tcwgweb.sh script, the build and test run may succeed, but if there
are any regressions, the dot will be Red now instead of Green. This
primarily effects the Backport and the Release jobs.
- rob -
Hi Sugar,
the toolchain you need is the one with the aarch64-linux-gnu triplet.
Regards,
Yvan
On 18 September 2014 08:05, Sugar <shugelinux(a)gmail.com> wrote:
> Hi yvan,
> I saw linaro have released
> gcc-linaro-arm-linux-gnueabihf-4.9-2014.08_linux.tar.bz2. I have compiled
> cortex-a53 by 'arm-linux-gnueabihf', but its binary is 'ELF 32-bit LSB
> executable', not 'ELF 64-bit'.
> Is it only compile to aarch32? If I want to compile aarch64, which
> toolchains I should choose? Or what options should pass to compiler.
>
> Thanks.
Hi all,
I'm using ct-ng to rebuild Linaro toolchain (arm-linux-gnueabihf ) for Linux kernel 2.6.36.
Ct-ng version: ct-ng-linaro-1.13.1-4.8-2014.01-01
There is a “FATAL: Kernel too old” message after mounting the rootfs. It turns out the default config using pre-built sysroot from Linaro website. After setting " CT_PREBUILT_SYSROOT=n" to build sysroot with lower kernel version, I get the following error:
[EXTRA] Building final compiler
[ERROR] /projects/broadcom-linux/joelz/opt/gcc-linaro-arm-linux-2.6-gnueabihf/arm-linux-gnueabihf/libc/usr/include/gnu/stubs.h:7:29: fatal error: gnu/stubs-soft.h: No such file or directory
[ERROR] make[5]: *** [_muldi3.o] Error 1
[ERROR] make[4]: *** [multi-do] Error 1
I tried to put " -mfloat-abi=hard" as CFLAG in different place, still can't pass this error.
If you have any idea how to fix it, please let me know.
Thanks,
Joel
== Progress ==
* GCC trunk/4.9 cross-validation (2/10)
- noticed a couple of newly introduced failing tests in some corner cases
- improved notification of selected commits to help fill the
backports speadsheet
* AArch64 libsanitizer
- answered Marcus/Andrew after their feedback
* Misc (conf calls, meetings, ....) 6/10
- usual 1/1 and team calls
- Connect preparation
- travelled on Friday
== Next ==
* Connect LCU14