🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Article View: es.comp.os.linux.programacion
Article #6064

Re: Memcpy rápido en modo kernel

#6064
From: Jayr Al-Dyn
Date: Sat, 09 Aug 2003 08:43
54 lines
2956 bytes
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA1

Gorka Olaizola dec�a:

> El d�a Fri, 08 Aug 2003 23:33:46 +0200, Jayr Al-Dyn
> <jayraldyn@jayraldyn.net> escribi�:
>> 
>> As� que ... �hay alguna manera de hacer copias de memoria r�pidas en zona
>> de kernel?
>> 
> En arch/i386/lib/mmx.c tienes una funci�n que lo hace con mmx
> 

Gracias, Gorka, la he incluido y usado sin ninguna diferencia :( ... y mi
procesador soporta MMX, por supuesto.

Para que te hagas una idea, los tiempos son (captura de 1280x1024/16 bpp,
reescalado a 352x288):

 - copia del framebuffer a buffer local: 180 �s (tanto en MMX como en memcpy
normal)
 - conversi�n RGB565 a RGB24: 50 �s
 - reescalado (downsampling) de la imagen: 90 ms
 - conversi�n RGB24 a YUV420P: 10 �s
(Por si no se lee bien, el signo �s significa microsegundos)

Como ves, incluso el proceso m�s complejo, el downsampling, tarda la mitad
que una simple copia de memoria mediante memcpy. Es m�s, la conversi�n de
RGB565 a RGB24 requiere recorrer todo el buffer copiado desde el
framebuffer, esto es, el mismo tama�o de memoria que el memcpy, y sin
embargo tarda tres veces menos. 

Intuyo que el problema radica en si la memoria est� o no en la cache, pero
(de momento) mis conocimientos al respecto son escasos. Ahora mismo estoy
intentando buscar informaci�n acerca del tema.

Gracias de todos modos.

- -- 
Jayr Al-Dyn
Usuario Linux #95614 / PGP-Key: d5678a00
http://www.jayraldyn.net

Ojo por ojo, jejentaicuatro
                -- An�nimo

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.2.2 (GNU/Linux)

iD8DBQE/NLQ17KeWPNVnigARAtn+AJ47H687kaAx2u1gPczFGc8hoaKwiQCfXVaE
dEmoedm8JvZn7HIiL7sbflw=
=GbxU
-----END PGP SIGNATURE-----
Technical Details
Message-ID: <bh2c7r$dmi$1@rantanplan.linux.es>
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!elnk-pas-nf1!newsfeed.earthlink.net!west.cox.net!east.cox.net!peer01.cox.net!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!escomposlinux.org!not-for-mail
References: <bh1501$l76$1@rantanplan.linux.es> <slrnbj97uf.ped.gorka@conn.helvete.escomposlinux.org>

Show Full Headers
Complete Article Headers
X-Google-Language: SPANISH,ASCII
X-Google-Thread: f86c8,59ca0de1d90dfc08
X-Google-Attributes: gidf86c8,public
X-Google-ArrivalTime: 2003-08-09 01:43:42 PST
Path: arc1-ca.pugleaf.net!archiver1.google.com!news1.google.com!newsfeed.stanford.edu!headwall.stanford.edu!newshub.sdsu.edu!elnk-nf2-pas!elnk-pas-nf1!newsfeed.earthlink.net!west.cox.net!east.cox.net!peer01.cox.net!cox.net!news-xfer.cox.net!mainake.escomposlinux.org!escomposlinux.org!not-for-mail
From: Jayr Al-Dyn <jayraldyn@jayraldyn.net>
Newsgroups: es.comp.os.linux.programacion
Subject: Re: Memcpy rápido en modo kernel
Date: Sat, 09 Aug 2003 10:43:27 +0200
Organization: MALOU
Lines: 54
Message-ID: <bh2c7r$dmi$1@rantanplan.linux.es>
References: <bh1501$l76$1@rantanplan.linux.es> <slrnbj97uf.ped.gorka@conn.helvete.escomposlinux.org>
NNTP-Posting-Host: 133.red-213-98-164.pooles.rima-tde.net
Mime-Version: 1.0
Content-Type: text/plain; charset=iso-8859-1
Content-Transfer-Encoding: 8Bit
X-Trace: rantanplan.linux.es 1060418620 14034 213.98.164.133 (9 Aug 2003 08:43:40 GMT)
X-Complaints-To: mainake@escomposlinux.org
NNTP-Posting-Date: Sat, 9 Aug 2003 08:43:40 +0000 (UTC)
User-Agent: KNode/0.7.2