Difference between revisions of "File size and smartlinking/fr"

From Lazarus wiki
Jump to navigationJump to search
Line 30: Line 30:
  
  
Le programme étant compilé est la loupe virtuelle. Le source et les binaires pour ce programme sont librement disponibles pour le téléchargement sur : http://magnifier.sourceforge.net
+
Le programme compilé est la loupe virtuelle. Le source et les binaires pour ce programme sont librement disponibles pour le téléchargement sur : http://magnifier.sourceforge.net
  
  
Line 39: Line 39:
  
  
The utilized OS is Windows XP and the 0.9.13 versions are from the same date when 0.9.12 was release. The comparison took place using the following software configurations:
+
L'OS utilisé est Windows XP et la version 0.9.13 est de la même date qu'a la 0.9.12. La comparaison a eu lieu en utilisant les configurations logiciel suivantes:  
  
* Lazarus 0.9.12 available [http://sourceforge.net/project/showfiles.php?group_id=89339 here]. Free Pascal 2.0.2 that comes with the installer. LCL and RTL are smartlinked. Refered from now on as simply 0.9.12.
+
* Lazarus 0.9.12 disponible [http://sourceforge.net/project/showfiles.php?group_id=89339 ici]. Free Pascal 2.0.2 vient avec l'installation. LCL et RTL sont smartlinked. Référencé dorénavant en tant que simplement 0.9.12.  
  
* Lazarus 0.9.13 downloaded from Subversion from the same date. Free Pascal 2.0.2 installed separately. The LCL is not smartlinked. Refered from now on as simply 0.9.13 + 2.0.2.
+
* Lazarus 0.9.13 téléchargé de la SVN de la même date. Free Pascal 2.0.2 installé séparément. La LCL n'est pas smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.0.2.
  
* Lazarus 0.9.13 snapshot. Free Pascal 2.1 that comes with the installer. The LCL is not smartlinked. Refered from now on as simply 0.9.13 + 2.1.
+
* Lazarus 0.9.13 snapshot. Free Pascal 2.1 vient avec l'installation. La LCL n'est pas smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.1.
  
* Lazarus 0.9.13 snapshot. Free Pascal 2.1 that comes with the installer. The LCL is smartlinked. Refered from now on as simply 0.9.13 + 2.1 + SL.
+
* Lazarus 0.9.13 snapshot. Free Pascal 2.1 vient avec l'installation. La LCL est smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.1 SL.  
  
 
{| border=2 width="100%"
 
{| border=2 width="100%"
Line 59: Line 59:
  
 
|-
 
|-
! File Size after strip (in bytes)
+
! Volume du fichier après strip (en bytes)
 
| align="center" | 1108480
 
| align="center" | 1108480
 
| align="center" | 1587712
 
| align="center" | 1587712
Line 66: Line 66:
  
 
|-
 
|-
! File Size after UPX (in bytes)
+
! Volume du fichier après UPX (en bytes)
 
| align="center" | 318976
 
| align="center" | 318976
 
| align="center" | 438272
 
| align="center" | 438272
Line 74: Line 74:
 
|-
 
|-
  
! Linking time
+
! Temps de lien
 
| align="center" | 15 seconds
 
| align="center" | 15 seconds
 
| align="center" | 5 seconds
 
| align="center" | 5 seconds
Line 86: Line 86:
  
  
The 0.9.13 snapshot from the 8th of February 2006 features a unstable compiler from the 2.1 branch, which can cause the bigger executables and slower linking time as compared to the other versions.
+
La 0.9.13 snapshot du 8 février 2006 comporte un compilateur instable de la branche 2.1, ce qui peut faire des exécutables plus grands et le temps de lien plus lent par rapport aux autres versions.  
  
  
The 0.9.12 version has the best file size of all, both with UPX and without, showing that Smartlinking really can diminish the file size in Windows. This, however, does not come without a cost, and the cost is linking time, which is about 3 times higher then without smartlinking.
+
La version 0.9.12 a le meilleur volume de fichier de tous, tous les deux avec UPX et sans, prouvant que Smartlinking peut vraiment diminuer le volume de fichier dans Windows. Ceci, cependant, ne vient pas sans coût, le coût de temps est le lien, ce qui est environ 3 fois plus haut que sans smartlinking.  
  
 
+
La version 0.9.12 est déjà saturé de Smartlinking sur Windows et aucune configuration supplémentaire n'est nécessaire. Ceci n'était pas le cas sur les releases précédentes.
The 0.9.12 version already comes fully configured for Smartlinking on Windows and no extra configuration is needed. This was not the case on previous releases.
 
  
 
==See Also==
 
==See Also==
  
 
* [http://members.chello.sk/ales/guide.html Guide] for anyone inexperienced in getting FPC and Lazarus to work properly.
 
* [http://members.chello.sk/ales/guide.html Guide] for anyone inexperienced in getting FPC and Lazarus to work properly.

Revision as of 23:21, 8 July 2007

Template:Volume de fichier et lien futé

"smartlinking" en Français "Lien Futé"

Cet article est un travail en cours au sujet de la taille de l'exécutable et du linkage futé sous Lazarus. Soyez libre de contribuer .

Introduction

Dans Free Pascal, "smartlinking" enlève le code et les variables inutilisés de l'exécutable finale. Ceci est fait pendant l'étape de lien, quand l'exécutable est écrit en utilisant les fichiers d'exécution créés par le compilateur plus tôt.

Étude de cas 1 dans Windows

Cette étude a été entreprise le 8 février 2006 parce Lazarus entièrement compilé avec Smartlinking est sortie (version 0.9.12). Il prévoit pour établir le rapport entre les résultats variables ci-dessous avec différent versions de Lazarus et Free Pascal aussi bien qu'avec Smartlinking et en dehors.


Les variables étant étudiées sont :

  • Taille de l'exécutable après un Strip
  • Taille de l'exécutable après un strip et un UPX
  • temps de lien

Le temps de Compilation n'est pas considéré ici parce qu'il est trop semblable sur toutes les configurations et beaucoup moins significatif que le temps de lien.

La taille de l'exécutable sans Strip n'est pas incluse. Noter que Strip a toujours été employée en ligne de commande avec la commande :

strip --strip-all magnifier.exe


Le programme compilé est la loupe virtuelle. Le source et les binaires pour ce programme sont librement disponibles pour le téléchargement sur : http://magnifier.sourceforge.net


Au sujet du temps de lien noter svp que l'ordinateur utilisé est un Pentium 4 3.2GHz avec la carte mère Intel et un processeur dual core de 512MB de RAM.


Résultats


L'OS utilisé est Windows XP et la version 0.9.13 est de la même date qu'a la 0.9.12. La comparaison a eu lieu en utilisant les configurations logiciel suivantes:

  • Lazarus 0.9.12 disponible ici. Free Pascal 2.0.2 vient avec l'installation. LCL et RTL sont smartlinked. Référencé dorénavant en tant que simplement 0.9.12.
  • Lazarus 0.9.13 téléchargé de la SVN de la même date. Free Pascal 2.0.2 installé séparément. La LCL n'est pas smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.0.2.
  • Lazarus 0.9.13 snapshot. Free Pascal 2.1 vient avec l'installation. La LCL n'est pas smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.1.
  • Lazarus 0.9.13 snapshot. Free Pascal 2.1 vient avec l'installation. La LCL est smartlinked. Référencé dorénavant en tant que simple 0.9.13 + 2.1 SL.
0.9.12 0.9.13 + 2.0.2 0.9.13 + 2.1 + SL 0.9.13 + 2.1
Volume du fichier après strip (en bytes) 1108480 1587712 1425408 1649152
Volume du fichier après UPX (en bytes) 318976 438272 388608 454144
Temps de lien 15 seconds 5 seconds 45 seconds 10 seconds


Conclusion


La 0.9.13 snapshot du 8 février 2006 comporte un compilateur instable de la branche 2.1, ce qui peut faire des exécutables plus grands et le temps de lien plus lent par rapport aux autres versions.


La version 0.9.12 a le meilleur volume de fichier de tous, tous les deux avec UPX et sans, prouvant que Smartlinking peut vraiment diminuer le volume de fichier dans Windows. Ceci, cependant, ne vient pas sans coût, le coût de temps est le lien, ce qui est environ 3 fois plus haut que sans smartlinking.

La version 0.9.12 est déjà saturé de Smartlinking sur Windows et aucune configuration supplémentaire n'est nécessaire. Ceci n'était pas le cas sur les releases précédentes.

See Also

  • Guide for anyone inexperienced in getting FPC and Lazarus to work properly.