HN user

yshalabi

21 karma
Posts0
Comments14
View on HN
No posts found.

That was true in an age where single threaded performance also saw similiar improvements. But those days a gone. The power wall and transister scaling also ate factors here.

Today, increases in compute capabilities enabling new technology requires new architectures that match the problems. Similarly to how GPUs enabled deep learning.

These processors have a lot of advanced features for big-time computing users (warehouse scale, super computers, etc). You can't just look at frequency or cachesize or number of cores for this chip. There are reliability features, quality of service features, and overall capabilities that consumer grade processors don't have.

Also I don't recommend you try to outfit your startups server farm. I dont know your needs, but you should find someone who can figure out what you really need.

Where did I say government? If I am not mistaken, the organizations that oversee the casinos are private sector. If they are needed here then I see no reason why it cant be setup the same.

As for your other comment... jeez. Why so passive-aggressive? You are certainly right -- we all have habits that someone would consider unhealthy. But is my taste for sweets as destructive as this? I dont know, seems like they are both serious. It might even be that the addictiveness and lack of end-game of these games make them more dangerous.

Anyways, my main concern is that these games are being played by kids. I think everyone agrees that kids are still developing. What is the impact of these kinds of games on them? Do you know for sure that its harmless?

Not meaning to insult you or anyone, but dismissing these questions without a good reason is just plain ignorance and probably irresponsible. I am not equipped to answer these questions. Which is why this post and my original one are filled with questions.

I am a bit concerned with the direction of in-game purchases. Games are being designed to push users to spend money. Whats the difference between this and gambling in casinos? Are users aware that algorithms are being gamed to maximize profits? Is this ethical? I think we really need some oversight here. I think an entire generation is being exposed to gambling and exploitation -- and I am not sure if its healthy.

Hi. I won't be able to read this for a while. I am not familiar with federated byzantine. Can you quickly comment on the difference between this and purely distributed consensus? How is fault tolerance maintained? Do we presume that top tiers are free of byzantine nodes?

Thanks!

Yes. Functional languages are amenable to composition. Because of their "purity". This allows trivial extraction of parallelism/concurrency. No need to reason about interleaving and shared data and such.

But, I don't know if "use FP if you want parallelism" is an acceptable solution currently. My intuition is that latency sensitive application can't use these languages because they don't expose the low-level primitives (read pointers) that make the difference in such applications. But I haven't written and profiled enough FP code to know if this is absolutely the case.

Yeah, my question was more of a curiosity one regarding the utility of EC for applications. Sorry if it seemed like a brazen dismissal of your article. I am actually waiting to read your wait-free removal and lock-free append extensions.

Now I understand your first paragraph a bit better :P. I would avoid using EC. Instead I would find another term. To me, EC implies that the object can be inconsistent for some period of time but will eventually reach a consistent state across all nodes. Your titling of the link and your use of the EC term kind of threw me off a bit.

"Modern computer are eventually consistent systems by virtue of the caching layers (and local registers) - only once modifications make it to a shared cache are they globally visible."

I agree with you but I would leave registers/cache out of this. Yes, if a read to a memory location could return stale data then this would be absolutely be a problem. But I would argue that reading a memory location into a register then performing RMW ops on it does not necessarily put the system in an inconsistent state. This because RMW ops on a register dont change the actual shared object.

I think a better example for what you are talking about is write buffers in individual processor cores. These can contain intermediate state visible to that processor but not to others. Such relaxed consistency procesors will require appropriately placed fences to achieve linearizability.

Outside of social media (comment lists, facebook feeds, etc) are there any other examples where EC is an appropriate replacement of linearizability?

If you want sequential behavior from your datastructure in the presence of concurrency then, sorry, but linearizability is the only model that meets the requirements. I imagine 99% of programs want their concurrent lists/stacks/queues/maps to behave like their sequential counterparts.