aboutsummaryrefslogtreecommitdiffstats
path: root/meta/recipes-devtools/images
AgeCommit message (Collapse)Author
2017-05-17python-pgo-image: change python3 profile target to pybenchmarquiz/fixes-9338-v2Markus Lehtonen
Running test.regrtest was still taking ridiculously long, i.e. around 4 hours in qemux86 on my desktop machine. Change to pybench which "only" takes around 55 minutes. [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17python-pgo-image: exclude tests from the python3 profile targetMarkus Lehtonen
Exlude failing tests (on qemux86 target) which would cause the profile task to fail. Also, disable some very long running tests. Running in qemux86 target on my i7-3770K: test_lib2to3: 1604.5s test_buffer: 1562.8s test_pickle: 1527.0s test_io: 1517.8s test_threading: 1384.1s test_asyncio: 1380.9s test_urllib2_localnet: 1276.8s test_itertools: 944.7s test_tuple: 847.7s test_trace: 756.7s test_tarfile: 716.7s test_unicodedata: 709.9s test_decimal: 615.1s test_buffer: 1562.8s test_pickle: 1527.0s test_io: 1517.8s test_threading: 1384.1s test_asyncio: 1380.9s test_urllib2_localnet: 1276.8s test_itertools: 944.7s test_tuple: 847.7s test_trace: 756.7s test_tarfile: 716.7s test_unicodedata: 709.9s test_decimal: 615.1s [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17python-pgo-image: profiling for python3Markus Lehtonen
Add a new 'do_profile3' task for python-pgo-image that runs profiling task for python3 and retrieves the profile data, similarly to 'do_profile' for python2. Profile data will be copied into a directory pointed by PYTHON3_PROFILE_DIR on the host system. The profile task may be specified with PYTHON3_PROFILE_TASK. [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17python-pgo-image: enable sstate for do_profileMarkus Lehtonen
There are caveats however, basically because of the circular dependency between python-pgo-image and python (python is a build dep of python-pgo-image, and at the same time, depends on the profile data generated by python-pgo-image). In practice the sstate data is only used when no profile data is yet present. Existing profile data (i.e. non-empty PYTHON_PROFILE_DIR) changes signature hash of python which, in turn, changes signature of python-pgo-image and causes a sstate signature mismatch and rebuild of python-pgo-image. Thus, in order to utilize sstate data the user should run "bitbake python-pgo-image -c clean" (or otherwise wipe pre-existing profile data) before running "bitbake python-pgo-image -c profile". [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17python-pgo-image: switch python default profile task to pybenchMarkus Lehtonen
Switch to pybench in order to reduce the time taken by profiling. [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17python-pgo-image: exclude tests from the default profile targetMarkus Lehtonen
Exclue tests that are segfaulting or otherwise failing (on qemux86 target), and thus, causing the profile task to fail. Also, disable tests that are taking very long to execute. In qemux86 target on my i7-3770K: test_lib2to3: 1908.8s test_io: 1278.4s test_itertools: 436.4s [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>
2017-05-17devtools/images: add python-pgo-imageMarkus Lehtonen
This is a special image for profiling Python in order to utilize profile-guided-optimization. Profile data can be obtained by by running bitbake python-pgo-image -c profile. It will be located in the directory pointed by ${PYTHON_PROFILE_DIR}. The profile task that is run can be altered by specifying ${PYTHON_PROFILE_TASK}. [YOCTO #9338] Signed-off-by: Markus Lehtonen <markus.lehtonen@linux.intel.com>