dotnetomaniak.pl

dotnetomaniak.pl - Artykuły z tagiem wydajność

Written by Dawid Sibińskion If you’ve ever had any performance issues with your .NET applications, you may find this writing interesting. In this post I’d like to present to you a tool produced by JetBrains – dotTrace, showing how using only one of its functionalities can help in finding causes of performance issues in .NET applications. Performance issue on production Months ago some of your colleagues implemented an application and delivered it to the Customer. The app is “Countries and Citie...

Źródło: www.dsibinski.pl
Dziel się z innymi:
Solving performance issues with dotTrace – Dawid’s blog

Daj się poznać 2017 43 dni, 2 godziny, 9 minut temu dsibinski 33 rozwiń

Dosyć często słyszy się, że programy pisane w C++ są szybsze od tych pisanych w C#. Głównym powodem takiego stanu rzeczy ma być fakt, że kod pisany w C++ jest kompilowany bezpośrednio do kodu natywnego, natomiast w przypadku C# programy działają na platformie .NET. Co za tym idzie, pisząc aplikację w C++ musimy sami zadbać o rzeczy takie jak na przykład zarządzanie pamięcią. Środowisko .NET robi tego typu rzeczy za nas (Garbage Collector). Niewątpliwie oszczędza to masę czasu p...

Źródło: csharp-dev.pl
Dziel się z innymi:
Który język jest szybszy? Test wydajności C# i C++ – Blog CSharp-Dev.pl

Daj się poznać 2017 45 dni, 15 godzin, 12 minut temu luki 377 rozwiń

Reading time ~5 minutes The previous post described the methodology I’ve used to calculate similarities between recipes in cookit. If You haven’t read it I’ll give it 4 minutes because it will make understanding this post easier. Go one, I’ll wait. It ended on a happy note and everything seemed to be downhill from there on. It was until I tried to run it. It took long. Very long. How long? I don’t know because I’ve canceled it after about one hour. Going with a famous quote (probably from E...

Dziel się z innymi:
[EN]How to calculate 17 billion similarities – IndexOutOfRange

Sztuka programowania 132 dni, 15 godzin, 6 minut temu maklipsa 140 rozwiń

Reading time ~4 minutes Diagnosing high memory usage can be tricky, here is the second part of how I found what was hogging to much memory in our system. In the previous post I’ve wrote how to create a memory dump and how many possibilities of catching just the right moment for it ProcDump has. When trying to analyze memory leaks, or high memory usage (not necessary meaning a leak) we have a few ways to approach it: Attach a debugger There are many problems with this approach, to name a fe...

[EN]Debugging high memory usage. Part 2 - .NET Memory Profiler – IndexOutOfRange

Narzędzia 195 dni, 6 godzin, 27 minut temu maklipsa 82 rozwiń

Dzisiaj chciałbym pokazać BenchmarkDotNet. Dzięki niemu w łatwy sposób można przetestować wydajność konkretnych metod w c#. Na blogu temat wydajności poruszałem już wiele razy i wiemy,  nie jest łatwe prawidłowe zmierzenie czasu wykonania kodu. Pamiętajmy, że kod wykonany pierwszy raz zawsze musi zostać przetłumaczony do kodu maszynowego (JIT). W momencie wywołania pierwszy raz jakiejkolwiek metody, CLR sprawdzi czy dana metoda ma już kod maszynowy. Jeśli jakaś me...

Dziel się z innymi:
BenchmarkDotNet – prosta biblioteka do testów wydajnościowych

Sztuka programowania 392 dni, 16 godzin, 14 minut temu rroszczyk 97 rozwiń

Ten post nie jest śmiertelnie poważny ani merytoryczny. Jednak nosi znamiona użyteczności i bycia ciekawostką zarazem. Otóż istnieje taki dodatek do Firefoxa o nazwie Tilt, który za pomocą WebGL rysuje strukturę dowolnej strony WWW. I coś ciekawego dzięki temu możemy poobserwować.

Źródło: blog.kokosa.net
Dziel się z innymi:
Blog Kokosa | Obejrz swoją stronę w 3D... i wyciągnij wnioski

Narzędzia 426 dni, 14 godzin, 37 minut temu KonradKokosa 219 rozwiń

JMeter jest darmową aplikacją bardzo przydatną podczas  wykonywania “load testing”. Interfejs użytkownika co prawda jest bardzo mało intuicyjny, ale po pewnym czasie można przyzwyczaić się. Aplikacja, po uruchomieniu prezentuje się następująco (...) Oczywiście na oficjalnej stronie można znaleźć pełną dokumentację, więc moim celem nie jest opisywanie każdego elementu. Jako próbkę, po prostu spróbujmy stworzyć test, który będzie łączył się z jakąś stroną (np. Google) i...

Dziel się z innymi:
HTTP – testy wydajnościowe w JMeter

Narzędzia 447 dni, 13 godzin, 42 minuty temu rroszczyk 152 rozwiń

Napisz odpowiedź Serializacja jest procesem przekształcania obiektów, do postaci tekstowej lub binarnej. .NET framework zapewnia nam kilka klas, takich jak XMLSerializer, DataContractJsonSerializer czy BinaryFormatter, które umożliwiają serializację danych do różnych formatów. Ponadto, do dyspozycji mamy wiele bibliotek firm trzecich, przez co wybór najlepszej metody staje się o wiele trudniejszy. Generalnie, każde narzędzie, czy format posiada swoje wady i zalety, dlatego też wybierając rozwiązania do ...

Źródło: akubiak.pl
Dziel się z innymi:
Porównanie metod serializacji w C# | Arkadiusz Kubiak

Sztuka programowania 777 dni, 14 godzin, 43 minuty temu Rey91 403 rozwiń

Kiedyś na blogu wyjaśniłem jak działa readonly, gdy jest wywoływany po za konstruktorem. Posłużyłem się następującym przykładem.

Dziel się z innymi:
Piotr Zieliński » CodeReview: Struktura readonly a wydajność

Inne 823 dni, 8 godzin, 7 minut temu http://pawlos.blogspot.com/ 264 rozwiń

O korzyściach z modyfikatora sealed, od strony projektowej pisałem już tutaj.  Dzisiaj postanowiłem jednak napisać prosty program, który pokaże nam czy faktycznie są jakieś różnice wydajnościowe. Oczywiście jest to raczej ciekawostka dla ludzi zajmujących się c# internals. Jeśli zależy nam na optymalizacji, zawsze zaczynajmy od ulepszenia samego algorytmu (zmniejszenia jego złożoności), a w ostateczności sięgajmy po mikro-optymalizacje. Warto stosować wspominane wskazówki, ale ze względu na dobre praktyk...

Dziel się z innymi:
Piotr Zieliński  » Modyfikator sealed dla klas–wydajność

Sztuka programowania 835 dni, 6 godzin, 37 minut temu http://pawlos.blogspot.com/ 240 rozwiń

W artykule przedstawione są różne metody pomiaru wydajności i porównywania szybkości zapytań SQL, bazując na narzędziach dostępnych w SQL Server - widoki DMV/DMF, Extended Events i Profiler. Omówione są także typowe błędy w analizach za pomocą podstawowych statystyk.

Źródło: www.sqlpedia.pl
Dziel się z innymi:
Wydajność zapytań w SQL Server - pomiar i porównanie metod

Bazy danych i XML 921 dni, 16 godzin, 28 minut temu Juris 326 rozwiń

Ostatnio znalazłem fajny przykład pokazujący jak można nieoczekiwanie pogorszyć wydajność aplikacji. Załóżmy, że mamy metodę, która jako parametr wejściowy przyjmuje funkcję...

Dziel się z innymi:
Piotr Zieliński » Code Review: Przekazywanie metody jako parametr

Sztuka programowania 947 dni, 16 godzin, 14 minut temu psz750 387 rozwiń

Dziś kolejny wpis na temat mikro-optymalizacji. Oczywiście dla większości aplikacji biznesowych taka różnica w wydajności nie ma kluczowego znaczenia. Myślę jednak, że jest to ciekawe z punktu widzenia IL i jak naprawdę działa język c#. Jeśli ktoś z kolei piszę np. grę albo aplikację czasu rzeczywistego, wtedy ma to już znaczenie, co robimy w każdej sekundzie. Zacznijmy od razu od wniosku: foreach w niektórych przypadkach jest znacząco wolniejszy od klasycznego for. Nie powinno to dziwić – w końcu iter...

Dziel się z innymi:
Piotr Zieliński » IL assembly: foreach vs. for, wydajność

Inne 953 dni, 2 godziny, 34 minuty temu psz750 296 rozwiń

W ostatnim wpisie wyjaśniłem jak bardzo sesja wpływa na wydajność i skalowalność aplikacji. Dzisiaj chciałbym pokazać przykład i konkretne liczby, które pozwolą nam oszacować skalę problemu. Zacznijmy od ASP.NET MVC. Stworzymy trzy kontrolery:SessionlessCotroller – kontroler będzie miał zablokowaną sesję. SessionController – kontroler zapisuje dane do sesji. SessionReadOnlyController – kontroler ma dostęp tylko do odczytu. Kod:[SessionState(SessionStateBehavior.Required)] publicclass SessionController...

Dziel się z innymi:
Piotr Zieliński » ASP.NET MVC, kontrolery a sesje: test wydajności

Web 1096 dni, 12 godzin, 13 minut temu psz750 172 rozwiń

Post ten dotyczy tematu efektywnego pobierania danych z Active Directory. Załóżmy, że chcemy pobrać listę użytkowników przy czym interesują nas tylko niektóre właściwości, które ich opisują. Pokarzę trzy niewiele różniące się z pozoru sposoby odczytania potrzebnych nam danych. Pozornie ponieważ te trzy podejścia znacząco różnią się wydajnością.

Dziel się z innymi:
Michał Komorowski: Jak napisać szybki program pobierający dane z AD

Inne 1123 dni, 4 godziny, 34 minuty temu psz750 242 rozwiń

Kilka tygodni temu, w jednym z wpisów, porównałem wydajność List z LinkedList. Przykład udowodnił, że dodawanie nowych elementów w LinkedList potrafi być nawet wolniejsze niż w przypadku List. Bardzo często, programiści myślą, że to LinkedList jest lepszy do dodawania nowych elementów, ponieważ łatwiej doczepić nowy wskaźnik niż alokować ponownie pamięć (też tak kiedyś uważałem). W przypadku List jest to jednak nie do końca prawda, ponieważ List

Dziel się z innymi:
Piotr Zieliński » Wydajność: Przeglądanie elementów w List oraz LinkedList

Sztuka programowania 1186 dni, 15 godzin temu trismegista 161 rozwiń

Kiedyś pisałem o modyfikatorze sealed i dlaczego warto go używać jeśli chodzi o kwestie dobrych praktyk. Podobne mam zdanie co do modyfikatora virtual – używam wyłącznie jak mam takie wymagania. Zawsze zaczynam od najbardziej restrykcyjnych modyfikatorów. Klasy deklaruję jako sealed internal, a metody jako private. Nie zaznaczam metod jako virtual “na zapas”, ponieważ skoro nie są one zaprojektowane pod tym kątem to może przynieść to więcej kłopotów niż korzyści. Analogiczne zasady stosuje się np. w bezp...

Dziel się z innymi:
Piotr Zieliński » Wydajność metod wirtualnych i niewirtualnych

Sztuka programowania 1193 dni, 4 godziny, 26 minut temu trismegista 259 rozwiń

W dzisiejszym wpisie, pokażę jaki wpływ mają klasy na zużycie pamięci. W ostatnim poście pokazałem korzyści płynące ze struktur jeśli mamy do czynienia z małymi kontenerami na dane. Najlepiej odpalmy po prostu następujący kod.

Dziel się z innymi:
Piotr Zieliński » Struktury oraz klasy– zużycie pamięci

Sztuka programowania 1197 dni, 4 godziny, 6 minut temu http://pawlos.blogspot.com/ 233 rozwiń

Dzisiaj kilka rozważań na temat korzyści płynących z wielowątkowości. Zastanówmy się, jak  bardzo może nam pomóc albo zaszkodzić wprowadzenie nowych wątków w aplikacji. Jeśli wykonanie danej pracy na jednym procesorze zajmuje T(1) a wykonanie jej na n procesorach zajmuje T(n) wtedy możemy oszacować korzyści płynące z nowych wątków. W przypadku gdy T(1)/T(n) daje wynik < n. oznacza to, że gdy praca na jednym rdzeniu zajęła 5 sekund, wtedy na 5 rdzeniach zajmie np. 1.2 sekundy. czyli wydajność ma chara...

Piotr Zieliński » Jaki wpływ na wydajność ma programowanie współbieżne

Prosta zagadka. Rozważmy następującą tabelą z dwoma kolumnami: CREATE TABLE Test ( ID Int IDENTITY(1,1) PRIMARY KEY, Name CHAR(10) ) CREATE INDEX IXTESTNAME ON dbo.Test (Name) Teraz na wejściu dostajemy pewien ciąg znaków i przechowujemy go w zmiennej: DECLARE @Variable CHAR(10); SET @Variable = '1234567890'; Chcemy znaleźć wszystkie te rekordy, dla których N pierwszych znaków w kolumnie Name jest takie samo jak N pierwszych znaków w zadanym ciągu. Można to zrobić tak (N=3)...

Dziel się z innymi:
Michał Komorowski: Indeksy, LIKE oraz =

Bazy danych i XML 1299 dni, 7 godzin, 28 minut temu http://pawlos.blogspot.com/ 207 rozwiń

1 2
Szkolenia SecurITum

kwiecień

26.
CodeEurope
Kraków

maj

17.
InfoShare
Gdańsk
23.
CodeEurope
Wrocław
Zobacz wszystkie

Najaktywniejsi

1

macko (32 816,53)

2

http://pawlos.blo... (31 603,45)

3

pzielinski (27 178,29)

4

gordon_shumway (21 178,87)

5

paduda (20 336,33)

6

psz750 (13 018,14)

7

rroszczyk (10 383,88)

8

Damian (9 041,08)

9

danielplawgo (7 235,99)

10

arek (6 807,91)

11

burczu (6 214,22)

12

PaSkol (5 393,84)

13

lukaszgasior (4 097,38)

14

jj09 (3 578,06)

15

jedmac (3 318,39)

16

http://jakub-flor... (3 224,66)

17

CaMeL (2 954,87)

18

spetz (2 783,22)

19

mnikolajuk (2 596,93)

20

lkurzyniec (2 590,69)