Skip to main content

Performance Check for Database Call C# before and after using AsParallel() (Not recommended for database call)

Brief

Today we will discuss the performance check for the below things.

  1. OrderBy().ToList() : This is very slow.
  2. OrderBy().AsParallel().ToList(): This is very fast.
  3. AsParallel().OrderBy().ToList(): This is normal.
Console Application Code is as below:

    public static void Main()
    {
      const int m = 10000;
      var s1 = Stopwatch.StartNew();
      var students1 = context.Students.OrderBy(s => s.Name).ToList();
      s1.Stop();

      var s2 = Stopwatch.StartNew();
      var students2 = context.Students.OrderBy(s => s.Name).AsParallel().ToList();
      s2.Stop();

      var s3 = Stopwatch.StartNew();
      var students3 = context.Students.AsParallel().OrderBy(s => s.Name).ToList();
      s3.Stop();

      Console.WriteLine("Normal Fetch Time Students : " + ((double)(s1.Elapsed.TotalMilliseconds * 1000000) /
          m).ToString("0.00 ns"));
      Console.WriteLine("Order By Then AsParallel Fetch Time Students : " + ((double)(s2.Elapsed.TotalMilliseconds * 1000000) /
          m).ToString("0.00 ns"));
      Console.WriteLine("AsParallel Then Order By Fetch Time Students : " + ((double)(s3.Elapsed.TotalMilliseconds * 1000000) /
          m).ToString("0.00 ns"));
    }

Output

Note

The code of the context class and student class with the details of the database connection with fluent api can be find here.

Please refer this when to use AsParallel() and it's anomalies.

Comments

Popular posts from this blog

All the require docs of job seekers (java docs, testing docs, study materials, genuine consultancy link)

# JUST_FOR  JAVA LOVERS : CORE & ADVANCED JAVA Notes ! Core Java and Advanced Java Notes! . Link 1 :-  https://www.dropbox.com/s/t…/1--%20Core%20Java%28TOC%29.pdf… Link 2 :-  https://www.dropbox.com/s/0ahi8r…/9--%20Advanced%20Java.pdf… _________________________________ 1.  https://drive.google.com/…/0BxJrew1xg5ZLZjdabnVUUkswalk/view 2. https://drive.google.com/…/0BxJrew1xg5ZLVHVSQ0tiU1VmVXM/view 3. https://drive.google.com/…/0BxJrew1xg5ZLdS1JUTAxMWtTcEU/view 4. https://drive.google.com/…/0BxJrew1xg5ZLY1M5bGp2Ym5lZUk/view 5. https://drive.google.com/…/0BxJrew1xg5ZLck13Rndpd1ZlcEU/view 6.  https://drive.google.com/…/0BxJrew1xg5ZLb2xodlhOTEVzLTA/view --------------------- Spring --------------------- https://drive.google.com/…/0BxJrew1xg5ZLQ3VaQnlja3N1Mkk/view https://drive.google.com/…/0BxJrew1xg5ZLTXNVLUdOR0xmTzQ/view https://drive.google.com/…/0BxJrew1xg5ZLWU9PUmVKUUYtMjQ/view ---------------------- Hibernate ---------------------...

Use your mobile phone as web cam to your pc/laptop

 Brief  This thing started when I had an interview😮 with one of the company in Nepal and my laptop camera quality was so bad that I was asked to turn off 😥 it which made me to think to buy a webcam for my laptop and I realized if the webcam be attached to my laptop using USB cable or WIFI then why we cannot use my phone. This is how it started. I have tested it and using this app called iVCam since then it worked very well as well with teams, zoom and other streaming app as well. We need to download these 2 stuffs only: The mobile app. The PC client software. Install these two software on your individual mobile and pc and then you are good to go.Mobile phone will ask for the permissions, and allow all the permission it ask for. There are two by which we can connect your mobile phone as web cam and they are:  A) WIFI: Connect your laptop and mobile to the same wifi network. Open app in both mobile and laptop/pc. It will automatically connect to the mobile camera....

Interview Experience - Senior Software Engineer (.NET)

 Brief I had a chance to be interviewed by one of the IT company in Kathmandu, Nepal. And, the best part of the interview which I have never seen till the date in Nepal in any company's interview so far are: The feedback of the interview: The interviewer gave feedback based on what they expected from the candidate. The feedback was related to the latest technologies like, .NET Core, ReactJS, Azure, RPC, REST API, Containers like Docker and the code deployment . Since, they are using the latest technologies and they needed a candidate who has exposure on these technologies so that they can easily provide support to the client. The salary negotiation:  The best part here was they did not ask for my current salary . They did ask about my salary expectation and how much at max they can offer . Since, the offered salary was way lower than my expectation. I declined the offer. Overall, the interview experience was great since it was straight and to the point interview. Below are ...