
Recherche avancée
Autres articles (87)
-
Contribute to translation
13 avril 2011You can help us to improve the language used in the software interface to make MediaSPIP more accessible and user-friendly. You can also translate the interface into any language that allows it to spread to new linguistic communities.
To do this, we use the translation interface of SPIP where the all the language modules of MediaSPIP are available. Just subscribe to the mailing list and request further informantion on translation.
MediaSPIP is currently available in French and English (...) -
Des sites réalisés avec MediaSPIP
2 mai 2011, parCette page présente quelques-uns des sites fonctionnant sous MediaSPIP.
Vous pouvez bien entendu ajouter le votre grâce au formulaire en bas de page. -
Gestion générale des documents
13 mai 2011, parMédiaSPIP ne modifie jamais le document original mis en ligne.
Pour chaque document mis en ligne il effectue deux opérations successives : la création d’une version supplémentaire qui peut être facilement consultée en ligne tout en laissant l’original téléchargeable dans le cas où le document original ne peut être lu dans un navigateur Internet ; la récupération des métadonnées du document original pour illustrer textuellement le fichier ;
Les tableaux ci-dessous expliquent ce que peut faire MédiaSPIP (...)
Sur d’autres sites (7640)
-
avcodec/aac_tablegen : speed up table initialization
26 novembre 2015, par Ganesh Ajjanagaddeavcodec/aac_tablegen : speed up table initialization
This speeds up aac_tablegen to a ludicruous degree ( 97%), i.e to the point
where it can be argued that runtime initialization can always be done instead of
hard-coded tables. The only cost is essentially a trivial increase in
the stack size.Even if one does not care about this, the patch also improves accuracy
as detailed below.Performance :
Benchmark obtained by looping 10^4 times over ff_aac_tableinit.Sample benchmark (x86-64, Haswell, GNU/Linux) :
old :
1295292 decicycles in ff_aac_tableinit, 512 runs, 0 skips
1275981 decicycles in ff_aac_tableinit, 1024 runs, 0 skips
1272932 decicycles in ff_aac_tableinit, 2048 runs, 0 skips
1262164 decicycles in ff_aac_tableinit, 4096 runs, 0 skips
1256720 decicycles in ff_aac_tableinit, 8192 runs, 0 skipsnew :
21112 decicycles in ff_aac_tableinit, 511 runs, 1 skips
21269 decicycles in ff_aac_tableinit, 1023 runs, 1 skips
21352 decicycles in ff_aac_tableinit, 2043 runs, 5 skips
21386 decicycles in ff_aac_tableinit, 4080 runs, 16 skips
21299 decicycles in ff_aac_tableinit, 8173 runs, 19 skipsAccuracy :
The previous code was resulting in needless loss of
accuracy due to the pow being called in succession. As an illustration
of this :
ff_aac_pow34sf_tab[3]
old : 0.000000000007598092294225
new : 0.000000000007598091426864
real : 0.000000000007598091778545truncated to float
old : 0.000000000007598092294225
new : 0.000000000007598091426864
real : 0.000000000007598091426864showing that the old value was not correctly rounded. This affects a
large number of elements of the array.Patch tested with FATE.
Reviewed-by : Rostislav Pehlivanov <atomnuker@gmail.com>
Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com> -
avutil/lls : speed up performance of solve_lls
24 novembre 2015, par Ganesh Ajjanagaddeavutil/lls : speed up performance of solve_lls
This is a trivial rewrite of the loops that results in better
prefetching and associated cache efficiency. Essentially, the problem is
that modern prefetching logic is based on finite state Markov memory, a reasonable
assumption that is used elsewhere in CPU’s in for instance branch
predictors.Surrounding loops all iterate forward through the array, making the
predictor think of prefetching in the forward direction, but the
intermediate loop is unnecessarily in the backward direction.Speedup is nontrivial. Benchmarks obtained by 10^6 iterations within
solve_lls, with START/STOP_TIMER. File is tests/data/fate/flac-16-lpc-cholesky.err.
Hardware : x86-64, Haswell, GNU/Linux.new :
17291 decicycles in solve_lls, 2096706 runs, 446 skips
17255 decicycles in solve_lls, 4193657 runs, 647 skips
17231 decicycles in solve_lls, 8384997 runs, 3611 skips
17189 decicycles in solve_lls,16771010 runs, 6206 skips
17132 decicycles in solve_lls,33544757 runs, 9675 skips
17092 decicycles in solve_lls,67092404 runs, 16460 skips
17058 decicycles in solve_lls,134188213 runs, 29515 skipsold :
18009 decicycles in solve_lls, 2096665 runs, 487 skips
17805 decicycles in solve_lls, 4193320 runs, 984 skips
17779 decicycles in solve_lls, 8386855 runs, 1753 skips
18289 decicycles in solve_lls,16774280 runs, 2936 skips
18158 decicycles in solve_lls,33548104 runs, 6328 skips
18420 decicycles in solve_lls,67091793 runs, 17071 skips
18310 decicycles in solve_lls,134187219 runs, 30509 skipsReviewed-by : Michael Niedermayer <michael@niedermayer.cc>
Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com> -
avfilter/af_afade : improve accuracy and speed of gain computation
25 novembre 2015, par Ganesh Ajjanagaddeavfilter/af_afade : improve accuracy and speed of gain computation
Gain computation for various curves was being done in a needlessly
inaccurate fashion. Of course these are all subjective curves, but when
a curve is advertised to the user, it should be matched as closely as
possible within the limitations of libm. In particular, the constants
kept here were pretty inaccurate for double precision.Speed improvements are mainly due to the avoidance of pow, the most
notorious of the libm functions in terms of performance. To be fair, it
is the GNU libm that is among the worst, but it is not really GNU libm’s fault
since others simply yield a higher error as measured in ULP."Magic" constants are also accordingly documented, since they take at
least a minute of thought for a casual reader.Reviewed-by : Paul B Mahol <onemda@gmail.com>
Signed-off-by : Ganesh Ajjanagadde <gajjanagadde@gmail.com>