dotnetomaniak.pl - Artykuły z tagiem performance

Reading time ~10 minutes This article is Part 2 in a 2-Part Series. Part 1 - What is the simplest database?Part 2 - This Article The previous post laid out the most minimum requirements for something to be called a database. While they may be too bare bones for many, there are a lot of databases that don’t fulfill even half of them, and this isn’t stopping from using them on a daily basis. The last time I’ve looked at files, this time something a bit more complex - key-value databases. The idea be...

Want unlimited scale and performance? This is where to start – IndexOutOfRange

Architektura 1640 dni, 6 godzin, 58 minut temu maklipsa 43 źrodło rozwiń

Reading time ~4 minutes This post is an analysis of a very interesting optimization proposed by Nicholas Frechette in the comments under the previous post. He proposed to use one of the oldest tricks in performance cookbook - divide and conquer. Well, it did not turn out as I expected.Saga Before I go further here are some link to the previous posts on the problem of calculating similarities and then optimizing. This thread grew to a few post. Here are all of them:How I calculate similariti...

Dziel się z innymi:
Dividing a bit in two for performance – IndexOutOfRange

Sztuka programowania 1722 dni, 20 godzin, 55 minut temu maklipsa 78 źrodło rozwiń

In previous post I've shown how a temporary table can be generated based on IQueryable and then reused in subsequent queries. I have also pointed out a serious limitation. The goal of this post is to address that limitation and touch on unit testing aspect.

Dziel się z innymi:
[EN] Entity Framework 6 - Dynamically creating temporary tables from IQueryable (Part 2 of 2)

Inne 1726 dni, 3 godziny, 26 minut temu tpeczek 203 źrodło rozwiń

Reading time ~2 minutes This post was inspired by a discussion on Reddit that followed my previous post In this post, I will cover a suggestion by BelowAverageITGuy that cut down the total execution time by almost one hour. Saga Before I go further here are some link to the previous posts on the problem of calculating similarities and then optimizing it grew to few post. Here are all of them:How I calculate similarities in cookit?How to calculate 17 billion similaritiesIndependent code in ...

Dziel się z innymi:
Making bits faster – IndexOutOfRange

Sztuka programowania 1734 dni, 5 godzin, 10 minut temu maklipsa 94 źrodło rozwiń

Reading time ~1 minute This will be a fast errata to the previous one. This time I will expand the oldest performance mantra: The fastest code is the one that doesn’t execute. Second to that is the one that executes once Last time I’ve forgot to mention one very important optimization. It was one of two steps that allowed me to go from 1530 to 484 seconds in the sample run.Saga Before I go further here are some link to the previous posts on the problem of calculating similarities and then...

Dziel się z innymi:
Independent code in performance optimizations – IndexOutOfRange

Programowanie rozproszone 1747 dni, 6 godzin, 40 minut temu maklipsa 46 źrodło rozwiń

Reading time ~6 minutes Last time I’ve shown how I’ve gone from 34 hours to 11. This time we go faster. To go faster I have to do less. The current implementation of Similarity iterates over one vector and checks if that ingredient exists in the second one. Since those vectors are sparse the chance of a miss is big. This means that I am losing computational power on iterating and calling TryGetValue. How to iterate only over the mutually owned ones and do it fast? Saga Before I go furth...

Dziel się z innymi:
Using bit masks for high-performance calculations – IndexOutOfRange

Sztuka programowania 1744 dni, 6 godzin, 20 minut temu maklipsa 58 źrodło rozwiń

I'm a huge fan of entity based and result set based relational mapping (classic ORMs). I'm also huge fan of DML based relational mapping (micro ORMs). In general I'm a huge fan of every technology that allows me to get the job done in the best possible way. I believe that one should never limit himself to single approach within a project - it should always be about choosing the best tool for the job. But sometimes there are real life constraints (licensing, business, politics etc.) which are limiting the...

Dziel się z innymi:
[EN] Entity Framework 6 - Dynamically creating temporary tables from IQueryable (Part 1 of 2)

Inne 1750 dni, 6 godzin, 14 minut temu tpeczek 195 źrodło rozwiń

Attribute routing (RouteAttribute) is a quite handy feature of ASP.NET MVC. It allows you to have nice looking URLs that everybody has already accustomed to and your client surely loves it. Plus it hides your true controller/action structure which sometimes might be desirable. But there's one catch. As your web app gets bigger and bigger, attribute routing might have a negative performance impact on your WHOLE website.

Dziel się z innymi:
[EN] The ugly truth behind pretty URLs

Web 1750 dni, 6 godzin, 14 minut temu Krzysztof Zmorzyński 148 źrodło rozwiń

Reading time ~6 minutes This post is covering a subset of what I am talking in my talk How I stopped worrying and learned to love parallel processing (currently only in polish). This will cover on how, in terms of performance, AsParallel can kick you in a place where it hurts a lot, simultaneously being a blessing in terms of… performance. How is that? Let’s look at someHistory AsParallel was introduced as an extension to LINQ with TPL in .NET 4.0. In theory, it’s God’s sent. The promise w...

Dziel się z innymi:
[EN] Problems with AsParallel – IndexOutOfRange

Architektura 1760 dni, 3 godziny, 13 minut temu maklipsa 116 źrodło rozwiń

Kontynuując wątek LINQ, który podjąłem jakiś czas temu, poruszę dziś temat optymalizacji operacji jakie wykonujemy na kolekcjach. Na starcie muszę się przyznać, że tytuł nie jest do końca zgodny z prawdą, bo trzy słowa to o wiele za mało, by wejść w głębiej w temat optymalizacji zapytań. Są jednak 3 metody, które można wykorzystać do znacznego przyspieszenia wykonywania operacji w bardziej rozbudowanych łańcuchach przy minimalnym nakładzie pracy.

Źródło: hryniewski.net
Dziel się z innymi:
Hryniewski.NET | Trzy słowa o optymalizacji LINQ

Narzędzia 1800 dni, 20 godzin, 38 minut temu Rafał Hryniewski 384 źrodło 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 1812 dni, 21 godzin, 35 minut temu maklipsa 89 źrodło rozwiń

Reading time ~2 minutes I’m taking a short break from Hangfire series, but I will get back to it. This time - Where did my memory go ? Or to be more exact: Why is this using so much memory? The story starts with one IIS application pool using around 6 Gigabytes of memory on one of our test environments. It was several times above the values that we expected it to use, so we decided to investigate. Without much thinking we fired up Visual Studio installed on the test server, and attached to the proce...

[EN] Debugging high memory usage. Part 1 - ProcDump – IndexOutOfRange

Architektura 1819 dni, 6 godzin, 51 minut temu maklipsa 64 źrodło rozwiń

Just how long does garbage collection take in .NET? Which generation takes longer?

Dziel się z innymi:
[EN] The cost of garbage collection – IndexOutOfRange

Sztuka programowania 1878 dni, 2 godziny, 35 minut temu maklipsa 123 źrodło rozwiń

Imagine that you have a service, which receives requests to execute specific methods, possibly from a number of different underlying libraries that you don’t want to expose directly. Possible examples are web services. The request comes in as a number of string values (method name, parameters etc.) and you need to respond with results. So you have inherited a project with API that starts with a method: object Invoke(string methodName, object[] parameters); You now have to call variety o...

Źródło: szumiato.pl
Dziel się z innymi:
Invoking methods dynamically in C#: Examples and benchmarks – Kuba on .NET

Inne 1901 dni, 6 godzin, 14 minut temu Jakub Szumiato 162 źrodło rozwiń

Over the last year on my spare time, I’ve been working on profiler for ASP.NET apps - netric.io. This small tool instruments methods from chosen assemblies and visualizes statistics of their execution times. It has got lower priority for me for a long time because of “Daj Się poznać” and other things but I think this project is worth to finally shed some light on it. Right now, the tool does just one thing: for every HTTP request, it generates methods time visualization like this (click to enlarge): ...

Dziel się z innymi:
netric.io - lightweight ASP.NET profiler · Maciek Lesiczka

Web 1912 dni, 7 godzin, 17 minut temu maciekl 99 źrodło rozwiń

One of the steps in cookit is calculating similar recipes. This is what you can see on the left on the recipe page like this For the sake of clarity and manageability it’s scheduled as separate Hangfire jobs. Because cookit is running 5 workers, so similarities are calculated for 5 websites concurrently. The process uses cosine similarity, so it allocates a huge list at start and calculates similarities. A very CPU heavy operation. So some time after triggering all recipes recalculation I saw this in...

GC can kill You. Practical GC performance counters in .NET – IndexOutOfRange

Inne 1938 dni, 1 godzinę, 16 minut temu maklipsa 99 źrodło rozwiń

Anyone who made any HackerRank problems considering performance has seen this phrase in the assignment: “watch out for slow IO”. We are used to thing about files, databases and such as potentially slow IO, but the Console? Yes, and you will be amazed how much. Couple words about the setup. I am using NLog with file target (for normal logging) and mail target (for total failure, and aggregated reports). When debugging or profiling I run the process as a con...

Tagi: net, performance
Dziel się z innymi:
System.Console is slow – IndexOutOfRange

Inne 1947 dni, 1 godzinę, 17 minut temu maklipsa 155 źrodło rozwiń

The latest, 6th watcher, has been recently added to the Warden library. It’s probably the simplest one, but it doesn’t mean it’s barely useful. The performance watcher has been created in order to measure the CPU & RAM usage, simple as that. Sounds interesting? If that’s the case, you might find the whole note useful then.

[EN] Measure your CPU & RAM usage with performance watcher | Piotr Gankiewicz

Daj się poznać 2016 1972 dni, 4 godziny, 34 minuty temu spetz 37 źrodło rozwiń

In this talk, I will present techniques for efficient incremental processing of complex analytical queries, ranging from classical SQL queries to linear algebra programs. Our system, called DBToaster, compiles declarative database queries into high-performance stream processing engines that keep query results (views) fresh at very high update rates. DBToaster uses a recursive query compilation algorithm that materializes a supporting set of higher-order delta views to achieve a substantially lower view m...

Tagi: performance, SQL
Dziel się z innymi:
[EN] MS Research - High-Performance Incremental Processing of Complex Analytical Queries

Sztuka programowania 2014 dni, 17 godzin, 41 minut temu kapral18 25 źrodło rozwiń

The ETag or Entity Tag is a part of HTTP protocol used for caching purposes. In the simplest way ETags are strings that help browser to identify and validate cache. Like almost everything the ETags can be inefficient while configured incorrectly. So let's have a closer look at them..

Źródło: blog.kateo.pl
Dziel się z innymi:
[EN] Tweak your application with ETags | blog.kateo.pl

Web 2339 dni, 21 godzin, 20 minut temu blog-kateo-pl 116 źrodło rozwiń

1 2 3 4

Konkurs z Code Europe - ranking

1
(30,04)
3
(15)
4
(15)
5
(5,01)

Najaktywniejsi w tym miesiącu

1
(45,05)
4
(30,02)
5
(15,11)
6
(15,03)
7
(15)
9
(15)
10
(15)