2010-08-19 22 views
6

Realmente estoy perdido con esto. Tengo un expansor que contiene un ItemsControl que se ve así;WPF rinde más lento con más procesadores

<ItemsControl ItemsSource="{Binding Source={StaticResource SomeItems}}"> 
    <ItemsControl.ItemTemplate>         
     <DataTemplate> 
     <StackPanel> 
      <ContentControl Content="{Binding}" /> 
     </StackPanel> 
     </DataTemplate> 
    </ItemsControl.ItemTemplate>         
</ItemsControl> 

Esto se ve muy bien cuando se expande en la mayoría de las máquinas (de uno o dos núcleos). Por alguna razón, cuando se ejecuta en una máquina completamente nueva con un núcleo cuádruple (i7) expandiéndose, este expansor lleva a los minutos. Hice algunos perfiles y parece que hay problemas de sincronización de subprocesos cuando WPF está midiendo los elementos, la medición del gasto de tiempo real y el procesamiento parecen insignificantes, el tiempo de espera para la sincronización de subprocesos es la mayor parte. ¿Alguien más ha visto algo como esto?

FYI - Lo intenté en tres máquinas quad core diferentes (i7) y tengo el mismo problema. No hay problemas para ejecutar en muchas máquinas antiguas. Confirmé que las máquinas están completamente parcheadas y que WPF está utilizando el procesamiento de hardware. He hecho la aplicación obligatoria y la reinstalación del framework.

¿Alguna idea de dónde buscar más?

Gracias

se ha ampliado

actualizaciones --Algunos de comments--

-una vez que el expansor, colapsando y volver a la ampliación son rápidos en las máquinas de problemas

-incluso cuando la prestación de hardware es el comportamiento deshabilitado es el mismo. Creo que debería eliminar la tarjeta gráfica de la ecuación.

-Estamos ejecuten .NET 4.0

--Algunos Specs como requested-- Win XP SP 3 en i7 Intel Core (4 núcleos) M 620 @ 2.67GHZ 2,98 GB de RAM 275 GB de almacenamiento disponible

+0

Me refiero a más núcleos, no más procesadores –

+0

¿Las tarjetas gráficas son todas idénticas? Si no, este sería un lugar para mirar. – Russ

+0

Además, incluso cuando la reproducción de hardware está deshabilitada, el comportamiento es el mismo. Creo que debería eliminar la tarjeta gráfica de la ecuación? –

Respuesta

1

Mi primer pensamiento sería sacar la tarjeta gráfica de la ecuación tanto como sea posible. Intente desactivar el tema Aero y vuelva a Windows básico.

¿Podría publicar las especificaciones completas de las máquinas? Hardware, software, 32 vs 64 bit, versión .net, etc ...

+0

Debo mencionar que estamos ejecutando XP en todas las máquinas. –

+0

Además, incluso cuando la reproducción de hardware está deshabilitada, el comportamiento es el mismo. Creo que debería eliminar la tarjeta gráfica de la ecuación? –

+2

@Christopherous, sí estaría de acuerdo. En este punto, consideraría presentar un error en http://connect.microsoft.com – JaredPar

Cuestiones relacionadas