43 ms·
Seems a very arbitrary choice. Shouldn't they be using standard benchmarks, anyway? It's easy to write your own benchmark to make something look good.
by jganetsk 17y ago
Seems a very arbitrary choice.
Shouldn't they be using standard benchmarks, anyway? It's easy to write your own benchmark to make something look good.
- coffeemug 17y agoWe used Objective-C because it has a very simple and efficient threading model, and we're on a tight schedule. Python wasn't fast enough, coding threads in C or C++ would take a few hours longer than we had, so we used Objective-C. You're absolutely right about standard benchmarks. We haven't engineered our benchmarking tools to make RethinkDB look good, we simply wrote code to run the most obvious operations - as many inserts as possible, as many selects as possible, etc. We will be moving to more commonly accepted benchmarks (such as TPC and iiBench) soon, but in the meantime it helps to have a simple benchmarking tool that shows off what RethinkDB can do on common workloads.
- jganetsk 17y agoI'm curious. This is an interesting new company, and I'd like to follow it. I'm very curious about the tools you use. What is particularly efficient about the threading model? I know very little about Objective-C. Are you guys are very comfortable with it? Does someone writes Mac application there?
- leif 17y agoI wrote the benchmark, and have never developed on a Mac or with the Cocoa framework. I started with a C application because I was familiar with the MySQL C api (specifically, their prepared statements), and that was very fast. Adding threading in C is difficult, so I took the opportunity to learn how to use NSThread, and really liked it. The benchmark is mostly C for the nitty gritty details, with some Objective-C to tie everything together. I wouldn't say I'm extremely comfortable with it, but it's very easy to drop straight down to C for the interesting bits.
- catch23 17y agoRead Tim Burks' talk about ObjC. ObjC is what C++ should have been. It's just too bad other great fast languages like D and ObjC aren't used often.