Articles of performance

¿Es A == 0 realmente mejor que ~ A?

Introducción a la configuración del problema Estaba haciendo algunos puntos de referencia que implican ~A y A==0 para una double array with no NaNs , que convierten a A en una matriz lógica donde todos los zeros se convierten en valores true y el rest se establecen como valores false . Para la evaluación comparativa, […]

Nuevo (std :: nothrow) vs. New dentro de un bloque try / catch

Hice algunas investigaciones después de aprender new , a diferencia de malloc() que estoy acostumbrado, no devuelve NULL para las asignaciones fallidas, y encontré que hay dos formas distintas de verificar si las nuevas tuvieron éxito o no. Esas dos maneras son: try { ptr = new int[1024]; } catch(std::bad_alloc& exc) { assert(); }; y […]

Rendimiento de rendimiento de XmlSerializer al especificar XmlRootAttribute

Actualmente estoy teniendo un problema realmente extraño y parece que no puedo resolver cómo resolverlo. Tengo un tipo bastante complejo que bash serializar usando la clase XmlSerializer. Esto realmente funciona bien y el tipo se serializa correctamente, pero parece tomar mucho tiempo para hacerlo; alrededor de 5 segundos dependiendo de los datos en el objeto. […]

Rendimiento SQLite .NET, ¿cómo acelerar las cosas?

En mi sistema, ~ 86000 inserciones SQLite tomaron hasta 20 minutos, significa ~ 70 inserciones por segundo. Tengo que hacer millones, ¿cómo puedo acelerarlo? ¿Llamar a Open () y Close () en el objeto SQLiteConnection para cada línea puede ralentizar el rendimiento? ¿Pueden las transacciones ayudar? Método de inserción típico para una sola línea: public […]

Rendimiento del selector jQuery con contexto

Estaba leyendo este artículo de Brandon Aaron aquí , sobre cómo puede ayudar el contexto de jquery. Así que pensé en hacer una prueba por mi cuenta. Entonces esto es lo que hice. Creó un DIV con id = “context” y DIV nested con id = “holder” en “#context” creado anteriormente. Creó un DIV nested […]

Llamar getters en un objeto vs. almacenarlo como una variable local (huella de memoria, rendimiento)

En el siguiente fragmento de código hacemos una llamada listType.getDescription() dos veces: for (ListType listType: this.listTypeManager.getSelectableListTypes()) { if (listType.getDescription() != null) { children.add(new SelectItem( listType.getId() , listType.getDescription())); } } Tiendo a refactorizar el código para usar una sola variable: for (ListType listType: this.listTypeManager.getSelectableListTypes()) { String description = listType.getDescription(); if (description != null) { children.add(new SelectItem(listType.getId() […]

vector o mapa, ¿cuál usar?

He escuchado a muchas personas decir que si la cantidad de elementos que se esperan en el contenedor es relativamente pequeña, es mejor usar std::vector lugar de std::map aunque utilizo el contenedor solo para buscar y no para iterar. ¿Cuál es la verdadera razón detrás de esto? Obviamente, el rendimiento de búsqueda del mapa no […]

Carga lenta de la primera página en el sitio asp.net

De vez en cuando (siempre después de un largo período de inactividad, por ejemplo, durante la noche) cuando accedo a un sitio creado con asp.net, la página tarda unos 15 segundos (15 segundos antes de ver ningún progreso, luego la página aparece rápidamente). Las páginas adicionales en ese sitio, o actualizaciones, son rápidas como de […]

el método más rápido (baja latencia) para la comunicación entre procesos entre Java y C / C ++

Tengo una aplicación Java que se conecta a través de un socket TCP a un “servidor” desarrollado en C / C ++. tanto la aplicación como el servidor se ejecutan en la misma máquina, una caja de Solaris (pero estamos considerando migrar a Linux eventualmente). tipo de datos intercambiados son mensajes simples (inicio de sesión, […]

C ++ cout imprime lentamente

Noté que si imprimo una cadena larga (char *) usando cout, parece imprimir 1 carácter a la vez en la pantalla en Windows 7, Vista y Linux (usando masilla) utilizando Visual C ++ 2008 en Windows y G ++ en Linux. Printf es mucho más rápido. De hecho, cambié de cout a printf para la […]