ARMv8 Support Analysis
ARMv8 Support Analysis
Project Description
Many Fedora packages contain assembley code for performance optimization or platform-specific support. Assembley code is very processor-specific. When assembley code is not present for a specific architecture, either the package will not build on that architecture, or other code (typically C) which is not processor-specific is used instead.
This project involves analyzing Fedora packages to determine which ones contain assembly code, and determining whether the package will probably build on the upcoming ARMv8 64-bit architecture.
Expected outcome: An analysis of part of the Fedora package set to predict ARMv8 build outcomes.
Maximum number of students: 6 (each taking part of the Fedora package set)
Skills required: packaging, scripting, writing
Resources: Chris Tyler (ctyler), Jon Masters (jonmasters)
Sources: ARMv8_Support_Analysis
Project Leader(s)
Andrew Oatley-Willis
Wiki Page: Andrew OW
Learn: acoatley-willis
IRC: oatley
M A
Wiki Page: Max
Learn: mhabed
IRC: maxam
Project Contributor(s)
Project Details
SBR600 Database Connect for ARMv8
- Database Choice
- MySQL
- PSQL
- Current Data Set before 0.1
Aborting due to error preparing package Summary for package: python-2.7.3-6.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 1 Total number of files: 1 Inline assembly usage: ./Python-2.7.3/Python/pymath.c (2) ./Python-2.7.3/Python/ceval.c (9) Summary for package: python-squaremap-1.0.0-0.5.b25.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-ssh-1.7.13-2.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-repoze-who-plugins-sa-1.0.1-1.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-demjson-1.6-2.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-zope-i18n-3.7.4-4.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-unidecode-0.04.7-4.fc16.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 Summary for package: python-smbc-1.0.13-1.fc17.src.rpm Could not prepare source package 0 Aborting due to error preparing package Summary for package: pymongo-2.1.1-1.fc17.src.rpm Assembly source files: 0 Inline assembly usage: 0 Total number of files: 0 ExcludeArch: ppc ppc64 %{sparc} s390 s390x
- Data Formation Requirments for normalization
- Possible csv file:
- packagename,assembly(y/n),adata1,adata2.....
- packagename,excludearch(y/n),arch1,arch2......
- Possible csv file:
Project Plan
Tracking mechanism (bugzilla, trac, github, ...):
Key contacts:
Goals for each release and plans for reaching those goals:
- 0.1
- Build initial script to identify assembly code inside fedora packages
- Make a basic database with the initial data
- 0.2
- Generate script that will distinguish between Arch and Platform specific assembly code
- Get/make koji connector to get additional data
- Make a better databse with the newer set dataset
- 0.3
- Predict the list of Fedora packages that may or may not build on ARMv8