Difference between revisions of "Compiler Flags on Pidora"

From CDOT Wiki
Jump to: navigation, search
(Created page with '= Project Name = <!-- Replace "Project Name" with the actual name of the project in the line above. --> == Project Description == <!-- Description should be no longer than a pa…')
 
(Communication)
 
(8 intermediate revisions by the same user not shown)
Line 1: Line 1:
= Project Name =
+
= Compiler Flags on Pidora =
<!-- Replace "Project Name" with the actual name of the project in the line above. -->
 
  
 
== Project Description ==
 
== Project Description ==
  
<!-- 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]. -->
+
Find a set of compiler flags that reduce the binary size and improve performance for packages built for Pidora.
  
 
== Project Leader ==
 
== Project Leader ==
  
<!-- Name(s) of primary person working on the project.
+
[[User:Charley Jiang | Charley Jiang]]
  
If there is more than one person working on related projects, they must have separate project pages, and the project title and description should identify who is doing what. For example:
+
== Project Contributor(s) ==
  
Include links to personal pages within wiki and to blog sites. -->
+
TBD
  
== Project Contributor(s) ==
+
== Project Details ==
  
<!-- 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.
+
Find a set of compiler flags that creates smaller and more efficient binaries for Pidora, compared to the current compiler flags.
  
NOTE: only the Project Leader should add names here. You should not add your own name to the Contributor list. -->
+
A set of packages will be selected for testing, to cover a range of dependencies and use cases, such as common utilities, libraries, and GUI tools.
  
== Project Details ==
+
The packages will be built in a Mock environment on an ARMv6 machine.
  
<!-- Provides more depth than the Project Description. This is the place for technical discussions, project specs, or other details. If this gets very long, you might consider breaking this part into multiple pages and linking to them. -->
+
'''List of packages'''
 +
* TBD
  
 
== Project Plan ==
 
== Project Plan ==
  
 
=== Tracking ===
 
=== Tracking ===
<!-- Describe the tracking mechanisms you are using for your project (bugzilla, trac, github, ...) -->
+
Project updates will be posted to this page and [http://cjiang13.wordpress.com/ Charley's Blog]
  
 
=== Key contacts ===
 
=== Key contacts ===
<!-- Add links to any mentors or key participants in the community. -->
+
TBD
  
 
=== Goals by Release ===
 
=== Goals by Release ===
  
 
Goals for each release and plans for reaching those goals:
 
Goals for each release and plans for reaching those goals:
<!-- Note: Each student must 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'''
* 0.2
+
* Create a script that compiles a list of packages from source, using different combinations of compiler flags, and outputs the sizes of the compiled binaries
* 0.3
+
* Find multiple combinations of compiler flags that create smaller binaries
 +
 
 +
'''0.2'''
 +
* Test the combinations found in 0.1 against a larger set of packages to ensure there is a consistent reduction in binary size
 +
* Test the performance of the smaller binaries and determine which set of compiler flags yields the best performace
 +
 
 +
'''0.3'''
 +
* Submit a patch to the rpm package recommending the new compiler flags
  
 
== Communication ==
 
== Communication ==
  
 
=== Mailing Lists ===
 
=== Mailing Lists ===
<!-- Add any appropriate mailing lists to which you are subscribed (e.g., see http://lists.fedoraproject.org -->
+
Fedora packaging: https://lists.fedoraproject.org/mailman/listinfo/packaging
  
 
=== Upsteam Wiki and Web ===
 
=== Upsteam Wiki and Web ===
<!-- Links to upstream wiki/web pages -->
+
RPM package: https://admin.fedoraproject.org/pkgdb/acls/name/rpm
  
 
=== Links/Bugs/Tracking ===
 
=== Links/Bugs/Tracking ===
Line 52: Line 59:
  
 
=== Source Code Control ===
 
=== Source Code Control ===
<!-- Add a link to source code URLs, including git/mercurial/svn/cvs repositories -->
+
RPM package: http://pkgs.fedoraproject.org/git/rpm.git
  
 
=== Blogs ===
 
=== Blogs ===
<!-- Links to the blogs of people involved, both inside and outside Seneca -->
+
[http://cjiang13.wordpress.com/ Charley Jiang's Blog]
  
 
=== Non-Seneca Participants ===
 
=== Non-Seneca Participants ===

Latest revision as of 00:54, 10 October 2013

Compiler Flags on Pidora

Project Description

Find a set of compiler flags that reduce the binary size and improve performance for packages built for Pidora.

Project Leader

Charley Jiang

Project Contributor(s)

TBD

Project Details

Find a set of compiler flags that creates smaller and more efficient binaries for Pidora, compared to the current compiler flags.

A set of packages will be selected for testing, to cover a range of dependencies and use cases, such as common utilities, libraries, and GUI tools.

The packages will be built in a Mock environment on an ARMv6 machine.

List of packages

  • TBD

Project Plan

Tracking

Project updates will be posted to this page and Charley's Blog

Key contacts

TBD

Goals by Release

Goals for each release and plans for reaching those goals:

0.1

  • Create a script that compiles a list of packages from source, using different combinations of compiler flags, and outputs the sizes of the compiled binaries
  • Find multiple combinations of compiler flags that create smaller binaries

0.2

  • Test the combinations found in 0.1 against a larger set of packages to ensure there is a consistent reduction in binary size
  • Test the performance of the smaller binaries and determine which set of compiler flags yields the best performace

0.3

  • Submit a patch to the rpm package recommending the new compiler flags

Communication

Mailing Lists

Fedora packaging: https://lists.fedoraproject.org/mailman/listinfo/packaging

Upsteam Wiki and Web

RPM package: https://admin.fedoraproject.org/pkgdb/acls/name/rpm

Links/Bugs/Tracking

Source Code Control

RPM package: http://pkgs.fedoraproject.org/git/rpm.git

Blogs

Charley Jiang's Blog

Non-Seneca Participants

Planets

Project News