<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>El 29/05/2011, a las 2:59p.m., Mariano Martinez Peck escribió:</div><br class="Apple-interchange-newline"><blockquote type="cite"><br><div class="gmail_quote"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; "><div><div class="h5"><blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; ">
<blockquote class="gmail_quote" style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0.8ex; border-left-width: 1px; border-left-color: rgb(204, 204, 204); border-left-style: solid; padding-left: 1ex; position: static; z-index: auto; "><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
</blockquote>
<br>
It's a bit better. There's no starvation if the timeout is greater than<br>
zero, but it's still a form of busy waiting, and it limits the number of<br>
queries per second per connection to at most 1000 (actually 1000 / timeout).<br>
To compare this with our native implementation - PostgresV3 - I measured 6k+<br>
queries per second per connection and it's still not optimized for Cog<br>
(#perform: is slow on Cog).<br>
<br>
<br>
</blockquote>
Thanks Levente. Unfortunatly I guess that's all we can do with a blocking<br>
FFI :(<br>
</blockquote>
<br></div></div>
That's right. You can write a custom plugin to avoid blocking if you really want to, but I guess the FFI version's performance is enough for most applications.<br><font color="#888888">
<br>
<br></font></blockquote><div><br>We tried to write our own plugin. Check package "OpenDBX-Plugin" in <a href="http://www.squeaksource.com/SqueakDBX">http://www.squeaksource.com/SqueakDBX</a>. I am not sure why we didn't succeeded. Maybe because our knowledge was no enough or maybe because its performance was not as good as expected. Maybe Esteban remembers why...<br></div></div></blockquote><div><br></div><div>we didn't succeed because at the time we hadn't time to do it (there was a lot of "sync" issues to handle, not an easy task), and when finally we talk about this, Eliot was talking about the threaded ffi, so we decided to wait :)</div><div><br></div><br><blockquote type="cite"><div class="gmail_quote"><div>
<br>Cheers<br><br><br>&nbsp;</div><blockquote class="gmail_quote" style="margin: 0pt 0pt 0pt 0.8ex; border-left: 1px solid rgb(204, 204, 204); padding-left: 1ex;"><font color="#888888">
Levente</font><div><div></div><div class="h5"><br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Levente<br>
<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Thanks<br>
<br>
Mariano<br>
<br>
<br>
<br>
<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
Levente<br>
<br>
<br>
<br>
&nbsp;<a href="http://www.squeakdbx.org/documentation/Asynchronous%20queries" target="_blank">http://www.squeakdbx.org/documentation/Asynchronous%20queries</a><br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
<br>
Eliot implemented a multi-threaded FFI for Cog but so far I am not sure<br>
if<br>
it is already working.<br>
<br>
Cheers<br>
<br>
--<br>
Mariano<br>
<a href="http://marianopeck.wordpress.com/" target="_blank">http://marianopeck.wordpress.com</a><br>
<br>
&nbsp;_______________________________________________<br>
<br>
</blockquote>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br>
<br>
</blockquote>
<br>
<br>
--<br>
Mariano<br>
<a href="http://marianopeck.wordpress.com/" target="_blank">http://marianopeck.wordpress.com</a><br>
<br>
&nbsp;_______________________________________________<br>
</blockquote>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
<br>
</blockquote>
<br>
<br>
<br>
-- <br>
Mariano<br>
<a href="http://marianopeck.wordpress.com/" target="_blank">http://marianopeck.wordpress.com</a><br>
<br>
</blockquote>
_______________________________________________<br>
seaside mailing list<br>
<a href="mailto:seaside@lists.squeakfoundation.org" target="_blank">seaside@lists.squeakfoundation.org</a><br>
<a href="http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside" target="_blank">http://lists.squeakfoundation.org/cgi-bin/mailman/listinfo/seaside</a><br>
</div></div></blockquote></div><br><br clear="all"><br>-- <br>Mariano<br><a href="http://marianopeck.wordpress.com/" target="_blank">http://marianopeck.wordpress.com</a><br><br>
</blockquote></div><br></body></html>