Difference between revisions of "ARMv8 Support Analysis"
(→Mailing Lists) |
(→Project Details) |
||
(14 intermediate revisions by 2 users not shown) | |||
Line 1: | Line 1: | ||
+ | [[Category:Fedora ARM Secondary Architecture]][[Category:SBR600]][[Category:DPI908/SBR600]][[Category:Fall 2012 DPI908]][[Category:Fall 2012 SBR600]]{{Draft}} | ||
= ARMv8 Support Analysis = | = ARMv8 Support Analysis = | ||
<!-- Replace "Project Name" with the actual name of the project in the line above. --> | <!-- Replace "Project Name" with the actual name of the project in the line above. --> | ||
Line 15: | Line 16: | ||
Resources: Chris Tyler (ctyler), Jon Masters (jonmasters) | Resources: Chris Tyler (ctyler), Jon Masters (jonmasters) | ||
− | Sources: [[ | + | Sources: [[DPI908/SBR600_Potential_Projects#ARMv8_Support_Analysis|ARMv8_Support_Analysis]] |
<!-- Description should be no longer than a paragraph. Include links to any relevant on-line resources. For example, [http://fedoraproject.org/wiki] or [http://developer.mozilla.org MDC]. --> | <!-- Description should be no longer than a paragraph. Include links to any relevant on-line resources. For example, [http://fedoraproject.org/wiki] or [http://developer.mozilla.org MDC]. --> | ||
== Project Leader(s) == | == Project Leader(s) == | ||
− | |||
− | |||
− | |||
− | |||
'''Andrew Oatley-Willis'''<br /> | '''Andrew Oatley-Willis'''<br /> | ||
Wiki Page: [[User:Oatley | Andrew OW]]<br /> | Wiki Page: [[User:Oatley | Andrew OW]]<br /> | ||
+ | Learn: acoatley-willis<br /> | ||
IRC: oatley | IRC: oatley | ||
'''M A'''<br /> | '''M A'''<br /> | ||
Wiki Page: [[User:Maxamaxim| Max]]<br /> | Wiki Page: [[User:Maxamaxim| Max]]<br /> | ||
+ | Learn: mhabed<br /> | ||
IRC: maxam | IRC: maxam | ||
Line 37: | Line 36: | ||
== Project Contributor(s) == | == Project Contributor(s) == | ||
+ | [http://markmail.org/message/6fsahegaah3xcep6 JCM's Code] | ||
<!-- Name(s) of people casually working on the project, or who have contributed significant help. Include links to personal pages within wiki. Adding the names of your contributors here is a nice way to thank them. | <!-- Name(s) of people casually working on the project, or who have contributed significant help. Include links to personal pages within wiki. Adding the names of your contributors here is a nice way to thank them. | ||
Line 43: | Line 43: | ||
== Project Details == | == Project Details == | ||
− | < | + | ===SBR600 Database Connect for ARMv8=== |
+ | * Database Choice | ||
+ | **MySQL | ||
+ | **PSQL | ||
+ | |||
+ | * Current Data Set before 0.1 | ||
+ | <pre> | ||
+ | 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 | ||
+ | |||
+ | </pre> | ||
+ | |||
+ | |||
+ | * Data Formation Requirments for normalization | ||
+ | ** Possible csv file: | ||
+ | **#packagename,assembly(y/n),adata1,adata2..... | ||
+ | **#packagename,excludearch(y/n),arch1,arch2...... | ||
== Project Plan == | == Project Plan == | ||
Line 55: | Line 112: | ||
<!-- Note: each contributor is expected to have unique goals. These goals may be ''related'' to other students' work, but must be ''distinct'' and ''attainable'' regardless of the state of the other students' work. For example, under the umbrella of one project title, one student may work on packaging a piece of software and another may work on documentation, or one may work on solving one bug and another on solving another bug, but two students must not work on the same bug or depend on the other students' work in order to be able to complete their own project. --> | <!-- Note: each contributor is expected to have unique goals. These goals may be ''related'' to other students' work, but must be ''distinct'' and ''attainable'' regardless of the state of the other students' work. For example, under the umbrella of one project title, one student may work on packaging a piece of software and another may work on documentation, or one may work on solving one bug and another on solving another bug, but two students must not work on the same bug or depend on the other students' work in order to be able to complete their own project. --> | ||
* 0.1 | * 0.1 | ||
+ | ** Build initial script to identify assembly code inside fedora packages | ||
+ | ** Make a basic database with the initial data | ||
* 0.2 | * 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 | * 0.3 | ||
+ | ** Predict the list of Fedora packages that may or may not build on ARMv8 | ||
== Communication == | == Communication == | ||
Line 77: | Line 140: | ||
=== Blogs === | === Blogs === | ||
<!-- Links to the blogs of people involved, both inside and outside Seneca --> | <!-- Links to the blogs of people involved, both inside and outside Seneca --> | ||
+ | |||
+ | [http://www.andrewow.wordpress.com/category/sbr600 Andrew's Blog] | ||
+ | |||
+ | [http://maxamaxim.wordpress.com/category/cdot/ Maxam's Blog] | ||
==== Seneca Particpants ==== | ==== Seneca Particpants ==== | ||
+ | |||
+ | [[User:Oatley | Andrew OW]] | ||
+ | |||
+ | [[User:Maxamaxim | Max]] | ||
==== Non-Seneca Participants ==== | ==== Non-Seneca Participants ==== |
Latest revision as of 12:45, 5 November 2012
Contents
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