|
View:
New views
20 Messages
—
Rating Filter:
Alert me
|
| < Prev | 1 - 2 - 3 | Next > |
|
|
ANN: SQLite 3.6.16.C#I am pleased to announce that the C# port is done to the point where others can look at it.
The project is located at http://code.google.com/p/sqlitecs Enjoy, Noah Hart |
|
|
Re: ANN: SQLite 3.6.16.C#Wow, that's impressive.
And very interesting that you've gained 3x-5x performance gain. Don't make this project educational only. I'm sure you'll find additional contributors. Just recently Miguel de Icaza was asking for line by line port of SQLite to C#. Great achievement that all tests are passing now. Max.
Best Regards.
Max Kosenko. |
|
|
Re: ANN: SQLite 3.6.16.C#Seems like I've misunderstood your performance results. And they are 3-5times slower than original...
Best Regards.
Max Kosenko. |
|
|
Re: ANN: SQLite 3.6.16.C#On Sat, Aug 1, 2009 at 4:21 AM, Kosenko Max<kosenko.max@...> wrote:
> > Seems like I've misunderstood your performance results. And they are 3-5times > slower than original... > This could be for a number of reasons. For one, it uses p/invoke for a number of things, which can be pretty slow and is not portable. Another, it is basically a direct port of the C code -- it is using goto all over the place, which probably hampers optimization as opposed to exceptions. -- Cory Nelson http://int64.org _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#Hummm... Guess there is a reason there are no implementations of C# external to the Mickeysoft world :-) Guess if I had a lot of time to kill I could port it to Delphi... BTW, what's the memory footprint? Fred -----Original Message----- From: sqlite-users-bounces@... [mailto:sqlite-users-bounces@...]On Behalf Of Kosenko Max Sent: Saturday, August 01, 2009 6:22 AM To: sqlite-users@... Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# Seems like I've misunderstood your performance results. And they are 3-5times slower than original... ----- Best Regards. Max Kosenko. -- View this message in context: http://www.nabble.com/ANN%3A--SQLite-3.6.16.C--tp24764742p24768252.html Sent from the SQLite mailing list archive at Nabble.com. _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#Only 10 DllImport (files and performance), most can be moved to managed version.
goto isn't something slow with C# - so it can't be a bottleneck. But it would be interesting to study this with profiler and see what is the real reason. I believe it shouldn't be that different in performance.
Best Regards.
Max Kosenko. |
|
|
Re: ANN: SQLite 3.6.16.C#One of the reason is true multiplatform support with Mono for managed world. Another one is Silverlight DB. Best Regards.
Max Kosenko. |
|
|
Re: ANN: SQLite 3.6.16.C#On 01.08.2009 02:14 CE(S)T, Noah Hart wrote:
> I am pleased to announce that the C# port is done to the point where others > can look at it. > > The project is located at http://code.google.com/p/sqlitecs Excuse me, but what's the difference of this to SQLite ADO.NET at http://sqlite.phxsoftware.com/ ? -- Yves Goergen "LonelyPixel" <nospam.list@...> Visit my web laboratory at http://beta.unclassified.de _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#Cory, There was no attempt at optimization in this initial port. SQLite does a lot of char/byte/string manipulation as well as and passing parameters by address in the middle of an array. But I ended up having to do a lot of byte buffer copying. MY guess is that is where most of the time is spent.
Regards, Noah
|
|
|
Re: ANN: SQLite 3.6.16.C#Yes, but still decent speed
All Results are in Rows per Second Test SQLite3C# SQLite3 Inserts 300K 1300K Selects 1500K 8450K Updates 60K 300K Deletes 250K 700K Noah
|
|
|
Re: ANN: SQLite 3.6.16.C#The compiled version of the SQLite3.exe is 528KB vs 506KB for the official release
I haven't checked the footprint while it is running. That would be depend on what it is doing ... Noah
|
|
|
Re: ANN: SQLite 3.6.16.C#Max, I missed posting the remaining errors
Current results ... 9 errors out of 30054 tests Still skipping about 9 additional tests Noah
|
|
|
Re: ANN: SQLite 3.6.16.C#This is not a driver, dll, or wrapper. This is a port of the underlying SQLite software.
Noah
|
|
|
Re: ANN: SQLite 3.6.16.C#Could we not disparage different OSs and languages?
A fair comparison of performance isn't between a C and C# implementation of SQLite, but between a C# and Java implementation of SQLite. Both C# and Java are managed languages that run atop a VM that runs atop an OS. C is down on the metal. I would expect the C version to be faster. I don't know the background of why this programmer did a port directly to C# instead of binding C# to the existing C library, but I assume he had his reasons. ----- Original Message ----- From: "Fred Williams" <f.williams@...> To: "General Discussion of SQLite Database" <sqlite-users@...> Sent: Saturday, August 01, 2009 6:08 AM Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# > > Hummm... Guess there is a reason there are no implementations of C# > external > to the Mickeysoft world :-) > > Guess if I had a lot of time to kill I could port it to Delphi... > > BTW, what's the memory footprint? > > Fred > > -----Original Message----- > From: sqlite-users-bounces@... > [mailto:sqlite-users-bounces@...]On Behalf Of Kosenko Max > Sent: Saturday, August 01, 2009 6:22 AM > To: sqlite-users@... > Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# > > > > Seems like I've misunderstood your performance results. And they are > 3-5times > slower than original... > > ----- > Best Regards. > Max Kosenko. > -- > View this message in context: > http://www.nabble.com/ANN%3A--SQLite-3.6.16.C--tp24764742p24768252.html > Sent from the SQLite mailing list archive at Nabble.com. > > _______________________________________________ > sqlite-users mailing list > sqlite-users@... > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > > _______________________________________________ > sqlite-users mailing list > sqlite-users@... > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#On Sat, Aug 1, 2009 at 1:05 PM, Jim Showalter<jim@...> wrote:
> I don't know the background of why this programmer did a port directly > to C# instead of binding C# to the existing C library, but I assume he > had his reasons. He says very clearly on the code website, he did so to learn C#. As I wrote in my comment there, I admire his perseverance, and that he managed to complete the project single-handedly. -- Puneet Kishor _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#No I'm not proud of what a lot of OS providers produce. Microsoft in
particular. Sun's Java is becoming such a resource pig, I won't mess with it either. SQLite was and has always been designed to be extremely cross platform portable, bare bones in both footprint and implementation. It is, and should remain so. If someone wants to take the open source and implement it in something like C# or Java, I think Dr. Hipp should contact them and politely ask them to change the name, because the end result will be neither that portable (C#) or efficient (Java.) MHO. Lucky for most, SQLite has not suffered the extreme feature creep that is inherent in most software projects. And it appears a constant battle to keep it true to its roots. If I want a multi-user, full featured database I have a multitude of very successful products to pick from. I won't keep asking the SQLite developers for just one more feature. I tend to use a product for which it was designed. I'm not the kind of guy that just because I own a hammer everything in the world looks like a nail. I guess that is why I can write in more than 10 programming languages. A place for everything, and every thing in its place, so to speak. Fred -----Original Message----- From: sqlite-users-bounces@... [mailto:sqlite-users-bounces@...]On Behalf Of Jim Showalter Sent: Saturday, August 01, 2009 1:06 PM To: General Discussion of SQLite Database Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# Could we not disparage different OSs and languages? A fair comparison of performance isn't between a C and C# implementation of SQLite, but between a C# and Java implementation of SQLite. Both C# and Java are managed languages that run atop a VM that runs atop an OS. C is down on the metal. I would expect the C version to be faster. I don't know the background of why this programmer did a port directly to C# instead of binding C# to the existing C library, but I assume he had his reasons. ----- Original Message ----- From: "Fred Williams" <f.williams@...> To: "General Discussion of SQLite Database" <sqlite-users@...> Sent: Saturday, August 01, 2009 6:08 AM Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# > > Hummm... Guess there is a reason there are no implementations of C# > external > to the Mickeysoft world :-) > > Guess if I had a lot of time to kill I could port it to Delphi... > > BTW, what's the memory footprint? > > Fred > > -----Original Message----- > From: sqlite-users-bounces@... > [mailto:sqlite-users-bounces@...]On Behalf Of Kosenko Max > Sent: Saturday, August 01, 2009 6:22 AM > To: sqlite-users@... > Subject: Re: [sqlite] ANN: SQLite 3.6.16.C# > > > > Seems like I've misunderstood your performance results. And they are > 3-5times > slower than original... > > ----- > Best Regards. > Max Kosenko. > -- > View this message in context: > http://www.nabble.com/ANN%3A--SQLite-3.6.16.C--tp24764742p24768252.html > Sent from the SQLite mailing list archive at Nabble.com. > > _______________________________________________ > sqlite-users mailing list > sqlite-users@... > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users > > _______________________________________________ > sqlite-users mailing list > sqlite-users@... > http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#On 1 Aug 2009, at 11:07pm, Fred Williams wrote: > SQLite was and has always been designed to be extremely cross platform > portable, bare bones in both footprint and implementation. It is, and > should remain so. If someone wants to take the open source and > implement it > in something like C# or Java, I think Dr. Hipp should contact them and > politely ask them to change the name, because the end result will be > neither > that portable (C#) or efficient (Java.) MHO. I don't have a problem with a port to other languages. In fact porting things to other platforms and other languages is a great way to discover bugs in the original: first you have to actually read the code, and second you find things that work only by coincidence. But porting is like making babies: the enthusiasm that goes into the original work is not always reflected in maintenance. And I hope that Dr. Hipp is going to add some features or fix some bugs in the C version of SQLite. At that point the port is either going to be incompatible, or require maintenance from someone who understands it. So I would want to be sure that's going to happen before basing any big project on the port. Simon. _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#* Noah Hart:
> I am pleased to announce that the C# port is done to the point where others > can look at it. Congratulations! (Is there something similar for Java, not using JNI nor NestedVM? 8-) _______________________________________________ sqlite-users mailing list sqlite-users@... http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users |
|
|
Re: ANN: SQLite 3.6.16.C#9/30054 means 99.97% tests are working.
That's a great achievement anyway. Performance problems can be profiled and optimized simpler than with native version. That isn't a nature of managed code to be slow. i.e. Perst DB which is managed from scratch is same speed or faster than SQLite (especially on embedded platforms). That's not because of C#, but because of different architecture, but still it shows that there are plenty of room. So don't froze this project please - there is a high demand on it exist. Max
|
|
|
Re: ANN: SQLite 3.6.16.C#I don't know why you have decided that C# or Java isn't competitive to native compiled code.
After JIT there is no VM between Java/.NET and OS. While C has better compiler than C# it still don't have JIT engine that can optimize your code for specific hardware you're running on right now. Or it can recompile code based on statistics. Options unavailable to native code. And after all having managed implementation gives better control on code, simpler code and so on. So in reality there should be strong reason for NOT using managed implementations for whatever. But it's only rising now...
Best Regards.
Max Kosenko. |
| < Prev | 1 - 2 - 3 | Next > |
| Free embeddable forum powered by Nabble | Forum Help |