Re: [Modeling-users] ec.insert() timing
Status: Abandoned
Brought to you by:
sbigaret
|
From: Sebastien B. <sbi...@us...> - 2003-09-11 15:27:43
|
> On September 11, 2003 09:55 am, you wrote:
> > and report t_kvc, t_insert and t_save ?
>=20
> ok, I did :=20
>=20
> pprint([t_kvc, t_insert, t_save])
>=20=20=20=20=20=20=20=20=20=20=20=20=20
> and the result (with *NO* profiling going on) is (sorry for the
> formating):
[...]
So we have:
>>> reduce(operator.__add__, t_kvc)
0.13458442687988281
>>> reduce(operator.__add__, t_insert)
199.5601282119751
>>> reduce(operator.__add__, t_save)
4.0703457593917847
I keep thinking about this but I can't see any reason why it
happens. BTW how many objects do you have in your EC?
(e.g. len(self.ec._uniquingTable._table))
> > > Without profiling, CPU usage stays under 20%, thats why I think about
> > > a lock synchronization problem. I can't recall when this started
> > > because I usually insert an item at a time but I'm pretty sure that it
> > > have not alway been like this. I'll try to downgrade my Modeling
> > > version and to load an old model with less entities.
>=20
> Exact same timing with 0.9-pre-10
> I have the .profile if you think you can get anything out of it but
> the profiler only reoport CPU time, no wall clock time so this problem
> is invisible to him...
You're right, I'm not sure it will be useful in this situation. Could
you consider reducing this example to the strict minimum and send me the
model+the test module so that I can see here what happens? (possibly
privately if for any reasons you don't want to publicly expose the model)
BTW did you try it on another machine?
Did you overwrote awakeFromInsertion() in your objects?
=20=20
I'm just wild-guessing here, and I do not like that. You can send
privately to me the profile.out generated by the profiler, ok there's
not real-time in it, but maybe I could get some hints out of it. I'll
be able to examine it in, say, two hours, and will report then.
Till then,
-- S=E9bastien.
|