Washu's Journal

Profile
ArenaNet LLC
0 comments
14 entries
Advertisement
Washu
November 18, 2014
C++ Quiz #4

This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.




  • What is the value of i after the first numbered line is evaluated?

  • What do you expect the second numbered line to …
  • 1,357 views
    Washu
    November 18, 2014
    C++ Quiz #3

    This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.



    Given the following code:



    class Base {  
    public:
    virtual ~Base() {}
    virtual void DoSomething() {}
    voi…
    1,222 views
    Washu
    November 18, 2014
    C++ Quiz #2

    This is a test of your knowledge of C++, not of your compiler's knowledge of C++. Using a compiler during this test will likely give you the wrong answers, or at least incomplete ones.




  • Using the code below as a reference, explain what behavior should be expected of each of the commented lines, pleas…

  • 1,212 views
    Washu
    September 14, 2014
    Building a SlimDX MiniTriangle sample with Direct3D11 and IronPython
    I generally don't post huge code dumps, mainly because I find them more annoying and less helpful than some books/authors might. But you know, I've been playing with IronPython/SlimDX recently and decided to do up another SlimDX Sample (demonstrating DX11), except in IronPython this time. This will…
    1,117 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD EAX, [EAX] of N
    So far I've covered how SlimGen works and the difficulties in doing what it does, including calling convention issues that one must be made aware of when writing replacement methods for use with SlimGen.
    So the next question arises, just how much of a difference can using SlimGen make? Well, a lot o…
    694 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD AL, [RAX] of N
    The question does arise though, when using SlimGen and writing your SSE replacement methods, what kind of calling convention does the CLR use?
    The CLR uses a version of fastcall. On x86 processors this means that the first two parameters (that are DWORD or smaller) are passed in ECX and EDX. However…
    623 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD [EAX], EAX of N
    So previously we delved into one of the nastier performance corners on the .Net framework. Today I'm going to introduce you to a tool, that is in development currently, which allows you to take those slow math functions of yours and replace them with high performance SSE optimized methods.
    We've cal…
    605 views
    Washu
    September 14, 2014
    SlimGen and You, Part ADD [EAX], AL of N
    Imagine you could have the safety of managed code, and the speed of SIMD all in one? Sounds like one of those weird dreams Trent has, or perhaps you are already thinking of using C++/CLI to wrap SIMD methods to help reduce the unmanaged transition overhead. You might also be thinking about pinvokin…
    658 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 4
    As noted previously there are some cases where the performance of unmanaged code can beat that of the managed JIT. In the previous case it was the matrix multiplication function. We do have some other possible performance benefits we can give to our .NET code, specifically, we can NGEN it. NGEN is …
    608 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 3
    Integrating unmanaged code into the managed platform is one of the problem areas with the managed world. Often times the exact costs of calling into unmanaged code is unknown. This obviously leads to some confusion as to when it is appropriate to mix in unmanaged code to help to improve the perform…
    613 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 2
    Previously I discussed various potential issues the x86 JIT had with inlining non-trivial methods and functions taking or returning value types. In this entry I hope to cover some potential pitfalls facing would be optimizers, along with discussing some unexpected optimizations that do take place.O…
    561 views
    Washu
    September 14, 2014
    Playing With The .NET JIT Part 1
    Introduction
    .NET has been getting some interesting press recently. Even to the point where an article in Game Developer Magazine was published advocating the usage of managed code for rapid development of components. However, I did raise some issues with the author in regards to the performance met…
    633 views
    Washu
    September 14, 2014
    Is It Really A Bug For A Beginner To Be Using C-Strings In C++?
    Depends, but probably yes.
    A beginning programmer should be focusing on learning to program. That is: the process of taking a concept and turning it into an application. Problem solving, in other words. Learning to program is not the same thing as learning a programming language. Learning a programm…
    830 views
    Washu
    September 14, 2014
    A Simple C++ Quiz
    This is a very basic C++ quiz, it mainly tests a wee bit of knowldege that I've found some people who profess to have a mastery of C++ to be lacking. The answers should all be based on the C++ standard, and not your compiler's implementation.
    Use the following code snippet to answer questions 1 thro…
    819 views
    Advertisement

    Popular Blogs

    shawnhar
    Generalist
    101 Entries
    9 Followers
    15 Entries
    10 Followers
    johnhattan
    Programmer
    1,277 Entries
    47 Followers
    ApochPiQ
    Generalist
    628 Entries
    44 Followers
    dgreen02
    Generalist
    338 Entries
    56 Followers
    Advertisement