The UNIX and Linux Forums  


Go Back   El UNIX y Linux Foros > Arriba Foros > Programación de Alto Nivel
.
google unix.com



Programación de Alto Nivel Plantear preguntas acerca de C, C + +, Java, SQL, y otros lenguajes de programación aquí.

Más UNIX y Linux Foro Temas usted puede encontrar útiles
Hilo Hilo para principiantes Foro Respuestas Último mensaje
semáforo raguramtgr UNIX for Dummies Preguntas y Respuestas 7 06-15-2009 10:39 AM
Semáforo Jaken Programación de scripts de shell y 2 04-04-2009 06:10 PM
dmidecode, velocidad de RAM \u003d "Velocidad actual: Desconocido" Santi Sistemas de ficheros, memoria y discos 0 02-16-2006 06:16 AM
Semáforo vjsony UNIX for Dummies Preguntas y Respuestas 3 04-07-2003 03:06 PM
semáforo yls177 UNIX for Dummies Preguntas y Respuestas 1 10-09-2002 12:18 AM

Closed Thread
English Japanese Spanish French German Portuguese Italian Dutch Swedish Russian Norwegian Hungarian Hebrew Danish Bulgarian Greek Powered by Powered by Google
 
Linkback vínculo Herramientas de hilo Buscar en este Hilo Calificación: Thread Rating: 1 votes, 4.00 average. Modos de visualización
  #1 (Enlace permanente)  
Old 09-24-2008
migurus migurus is offline
Usuario Registrado
  
 

Fecha: Sep 2008
Ubicación: EE.UU.
Puestos: 49
Mi versión de la viga no tiene bandera-c, o de cualquier otra bandera similar a la que he usado con traza en Linux.


En Linux:
$ / Sbin / sysctl-a | grep shm
... <snip error msgs>
vm.hugetlb_shm_group \u003d 0
kernel.shmmni \u003d 4096
kernel.shmall \u003d 2097152
kernel.shmmax \u003d 33554432

Q: ¿Por qué parámetros SHM semáforo afectar el rendimiento?

Además, sólo en este caso me encontré
$ / Sbin / sysctl-a | grep sem
<snip error msgs>
kernel.sem \u003d 250 32000 32 128

Última edición por migurus; al 09-24-2008 08:55 PM.. Motivo: añadido información
  #2 (Enlace permanente)  
Old 09-25-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.891
Cita:
Publicado originalmente por migurus View Post
Q: ¿Por qué parámetros SHM semáforo afectar el rendimiento?
* * Es posible que debido al número de página de los cuadros y estructuras necesarios para hacer uso de toda esa memoria. Podría dar lugar a cada op requieren de dos a tres pierde caché por llamada. Si no hay memoria caché extraña, porque es menos shmem, entonces tal vez toma 3 veces más rápido. Jim?
  #3 (Enlace permanente)  
Old 09-29-2008
migurus migurus is offline
Usuario Registrado
  
 

Fecha: Sep 2008
Ubicación: EE.UU.
Puestos: 49
Me gustaría pedir a los gurúes que más puedo publicar mi pregunta. ¿Recomendaría usted me cualquier otro grupo o foro?
Sus sugerencias serán apreciados.
  #4 (Enlace permanente)  
Old 09-30-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.891
Como he sugerido anteriormente: LinuxQuestions.org.

Desde el cuello de botella parece estar dentro de la llamada al sistema, le sugiero ver también relacionados con el núcleo del BB (KernelTrap.org es buena).
  #5 (Enlace permanente)  
Old 09-30-2008
migurus migurus is offline
Usuario Registrado
  
 

Fecha: Sep 2008
Ubicación: EE.UU.
Puestos: 49
Gracias Otheus y Jim, tengo bastante detallada respuesta aquí:
semáforo de la velocidad de acceso | KernelTrap

Así, el núcleo 2.6.9 no es la mejor para la moderna h / w.

Agradezco everebodys tiempo!
  #6 (Enlace permanente)  
Old 10-01-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.891
Unhappy

Felicidades a ustedes por su tenacidad! Sin embargo, no creo que este es el final de la misma.

Hice un poco de investigación sobre la respuesta de strcmp. 2.6.9 fue liberado en 2004 y es el estándar con RHEL 4, que se incluye con glibc 2.3.4. Pentium 3 a la edad fueron en 2004. RHEL 5 buques con el kernel 2.6.18 y 2.5.12 glibc.

Así que hice algunos puntos de referencia.

He seguido la sugerencia del strcmp y utilizó "una caída de temporizador" método, cuando el bucle se inicia y termina después de la hora () toma nota de llamada de un cambio en cuestión de segundos. Hay de 10 a 100 ms diferencia a ambos lados de la caída, por lo que tuvo un promedio de varias carreras. Luego divida la ops / s por el número de la velocidad de la CPU (ciclos / s) para obtener "los tics por op".
  • 2.6.18 / P3 / 800 MHz: 548300 / s (promedio de 19 carreras) \u003d 1459 tics / op
  • 2.6.18 / AMD Opteron 285 / 2,6 GHz: 1689138 (promedio 6 carreras) \u003d 1539 tics / op
  • 2.6.18 / AMD Opteron 270 / 1,0 GHz: 974228 (promedio 7 carreras) \u003d 1026 tics / op
  • 2.6.9 / Xeon / 3,6 GHz: 917196 (promedio de 4 carreras) \u003d 3925 tics / op
  • 2.6.9 / P3 / 1.25 GHz: 733927 (promedio de 5 carreras) \u003d 1703 tics / op
  • 2.6.9 / Xeon / 2,3 GHz: 1127894 (promedio de 10 carreras) \u003d 2608 tics / op

Para los tics / op, menor es mejor. Por lo tanto, el núcleo 2.6.18 es más rápido que los núcleos 2.6.9. El Xeon es mucho lento. Presumiblemente, los granos fueron compiladas por un mínimo común denominador. Optimización de las banderas no fueron activadas, pero había una diferencia de compiladores: el gcc 2.6.9 acoge utilizado 3.4.6, mientras que las más recientes fueron con gcc 4.1.1. Asimismo, cabe señalar que no tenemos un AMD corriendo 2.6.9 ni un Xeon corriendo 2.6.18.

Es muy posible que el problema es que estos núcleos no fueron compilados óptima de las distintas arquitecturas. ¿Por qué la Xeons son mucho más lenta es bastante sorprendente, dado su uso como característica HPC componentes.

A pesar de todo, ninguno de estos resultados parecen explicar la cuestión fundamental: ¿Por qué es tanto más rápido de SCO?

Última edición por otheus; al 10-08-2008 06:57 AM.. Motivo: me dijo que el Xeon es mucho más rápido cuando era mucho más lento.
  #7 (Enlace permanente)  
Old 10-01-2008
otheus's Avatar
otheus otheus is offline Forum Staff  
Moderador ala Modo
  
 

Fecha: febrero 2007
Lugar: Innsbruck, Austria
Puestos: 1.891
Aquí está mi código:

Código:
#include <stdio.h>
#include <sys/types.h>
#include <sys/ipc.h>
#include <sys/sem.h>
#include <time.h>
#define NSEMS   2

/* change this per CPU to run between 8 and 12 s*/
const static int maxloop = 10000000; 

main(int argc, char *argv[])
{
    time_t start,last,stop;
    long int i;
    int estimate = 100;
    int sid;
    key_t key;
    ushort vals[NSEMS] = { 0, 0 };

    key = ftok("/tmp",99);
    last=start=time(NULL);
    for (i = 0; i < 1000; ++i) {
        usleep(10);
        last=time(NULL);
        if (last > start) break;
    }
    start=last;
    last = 0;

    for (i = maxloop/8; i < maxloop; i++) {
      if ((sid = semget(key, NSEMS, IPC_CREAT | 0777)) == -1) {
          perror("Can Not Get Semaphore ID");
      }
      if (semctl(sid, NSEMS, GETALL, vals) == -1) {
          perror("Can Not Get Semaphore Values");
      }
    }

/* do the last 1/8th until the second changes.
    If your processor reaches the maxloop before that,
    change the maxloop or the divisor or the "estimate" */

    stop=time(NULL);
    for (i = maxloop - maxloop/8; i < maxloop; ++i) {
      if ( !(i % estimate) ) {
        last=time(NULL);
        if (last > stop) break;
        stop=last;
      }

      /* repeat semaphore opts */
      if ((sid = semget(key, NSEMS, IPC_CREAT | 0777)) == -1) {
          perror("Can Not Get Semaphore ID");
      }
      if (semctl(sid, NSEMS, GETALL, vals) == -1) {
          perror("Can Not Get Semaphore Values");
      }
    }
    stop=last;

    printf("%.2f semop/s (%i/%i) [%d]\n", (double)i/(stop-start), i, stop-start, estimate);
}

Closed Thread

Marcadores

Herramientas de hilo Buscar en este Hilo
Buscar en este Hilo:

Búsqueda avanzada
Modos de visualización Vota a este hilo
Vota a este hilo:

Normas de envío
puede que no nuevo puesto de hilos
puede que no enviar respuestas
puede que no enviar archivos adjuntos
puede que no editar sus puestos

Código BB es Encendido
Emoticones son Encendido
[IMG] código Encendido
Código HTML es Apagado
Trackbacks son Encendido
Pingbacks son Encendido
Refbacks son Encendido




Todas las horas son GMT -4. La hora es 06:23 PM.


Powered by: vBulletin, Copyright © 2000 - 2006, Jelsoft Enterprises Limited. Traducciones de idiomas Powered by .
vBCredits v1.4 Copyright © 2007 - 2008, PixelFX Estudios
El UNIX y Linux Foros Contenido Copyright © 1993-2009. Todos los derechos Reserved.Ad Gestión por RedTyger

Las direcciones URL de contenido vBSEO 3.2.0