Question

J'ai mis en place une solution qui crée des rapports PDF rapide du feu. Actuellement, il semble que je ne peux pas obtenir des services d'information à utiliser toutes les ressources dont il dispose pour elle. Le système ne semble pas être lié IO, CPU liée, ou de la mémoire liée. Toutes les suggestions à essayer de comprendre pourquoi il fonctionne donc?

L'application est pas réseau IO lié, et il est multi-thread à 2 fois le nombre de processeurs.

Était-ce utile?

La solution

SQL Server Reporting services limite le nombre de rapports à exécuter 2 rapports et 2 rapports Web simultanées ad hoc simultanées. Ceci est une limite stricte imposée par le serveur.

Autres conseils

Robin Day a probablement raison, si vous utilisez un processeur qui prend en charge que vous hyper threading peut obtenir un avantage de performance en tournant ce dans le BIOS. Vous pouvez essayer un test de performance A / B.

Vous pouvez également vérifier l'instance SQL (quand vous dites service d'information vous dire SSRS droit?) N'a pas une affinité de processeur obtenu ensemble.

Est-ce un cas de ne pas utiliser une approche multi thread? la machine utilise 100% d'un noyau d'un processeur et qui est le goulot d'étranglement?

EDIT: Désolé pour lapalissade, était juste une idée avant de vous l'avez mentionné qu'il était déjà multithread. Je crains que je ne peux pas offrir des suggestions plus.

  

Toutes les suggestions à essayer de comprendre pourquoi il fonctionne donc?

a) Il y a une API pour limiter tout un processus à une CPU. Test en utilisant GetProcessAffinityMask

b) « état de discussion » et « Discussion raison d'attente » sont deux des compteurs de performance ... peut-être que vous pouvez lire ceci pour voir pourquoi les discussions, doit être en cours d'exécution, nous vous CROYEZ pas.

Tous les fils de votre application se battent pour une seule serrure. Utilisez un profileur pour voir s'il y a une congestion quelque part.

Si vous avez quatre cœurs, cela expliquerait pourquoi vous voyez 25% l'utilisation globale du processeur.

Peut-être que le serveur ne peut pas fournir plus de données sur le réseau (il est donc lié réseau IO)?

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top