Tag Info

New answers tagged

1

Yes, there would still be a need for caching, regardless of memory technology. What you will find is that RAM access latencies are order of magnitude greater than the underlying chip access latencies, while L1 cache access latency is pretty much just the chip access. This is because when you access RAM there is both a narrower bus and a lot more work to ...


1

That 1000 times faster is a rather unhelpful number without specifying what metric it refers to. Fortunately, Ordous noticed that they do specify that the latency is about 1000 times better than NAND flash at about 3 minutes into this video. Throughput is a measure of how much data you can transfer in a given time period. It's measured in things like ...


0

Your design seems that it can benefit from Asynchronous Messaging Messages can be sent through different pipelines to multiple receiving applications and scheduled for execution at certain time (the scheduling can be a built-in feature of the message bus (middle-ware) or can be baked in your solution (reply with with a shceudled task id message and send the ...


1

Compilers do a lot of optimizations. Inlining is one of them, whether the programmer wanted or not. For example, MethodImplOptions does not have an "inline" option. Because inlining is automatically done by the compiler if needed. Many other optimizations are especially done if enabled from the build options, or "release" mode will do this. But these ...


0

It depends. Without any synchronisation and without volatile or atomic variables it does not make a difference. However, if those methods change the object-state you will need some form of synchronisation, otherwise multiple threads would overwrite changes from other threads or just not see the change. Synchronisation is not free, volatile variables and ...


0

No, you can't implement it without a performance penalty. PIMPL is, by it's very nature, a performance penalty, as you are applying a run-time indirection. Of course, this depends on exactly what you wanted to indirect. Some information is simply not used by the consumer- like what exactly you intend to put in your 64 4-byte-aligned bytes. But other ...


2

To me, the advantages don't outweigh the disadvantages. Advantages: It can speed up compilation, since it saves a rebuild if only the private method signatures have changed. But rebuilding is necessary if public or protected method signatures or private data members have changed, and it's rare that I have to change private method signatures without ...


4

The selling points of the Pimpl pattern are: total encapsulation: there are no (private) data members mentioned in the header file of the interface object. stability: until you break the public interface (which in C++ includes private members), you'll never have to recompile code that depends on the interface object. This makes the Pimpl a great pattern ...


1

You shouldn't need to check for data to be received from a socket. You want to ask the OS to tell you when data is received. With poll (or select), you can pass it a bunch of sockets at once, and a large (or infinite) timeout. poll will return some data's been received on any of the sockets you passed it. If nothing is received, it will keep waiting without ...


4

After some investigation, I would say this seems pretty optimal. Please see my gist here. In the PHP file in the gist I've generated some nested arrays with unsorted keys using one function, counted the total number of keys (including keys in nested arrays) using the recursive option to count, timed sorting the array using your function above, generated a ...


0

I asked this question more than one year ago. I am using fragments everyday and I would recommend it. First of all, I want to say that using fragments is just an options and will be a reflex to consider it once you start using them. Advantages: 1/ it helps to modularize the code where you can have a full flow in one Activity, in separated fragments. ...



Top 50 recent answers are included