Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
I ended up just removing 'SculptData' from the XML format: http://opensimulator.org/mantis/view.php?id=7038#c25621 -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079p7579092.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
That field contains the asset data, which, in the case of a sculptie is not a mesh but a texture. For ODE, the resulting mesh will be cached once generated and reused, however the asset will need to be reaccessed later if a mesh with another scale is required, or one with different optional parameters such as invert or mirror being set. If you remove the asset data, it will need another asset fetch and multiple attempts to create a mesh until the asset becomes available again. I'd suggest *not* removing the asset data, but rather exclude it from the serialization when it's being stored for attachment purposes so as to reduce as many asset fetches as possible and keep sim startup/load time low. On Thu, Mar 27, 2014 at 10:41 AM, James Stallings II james.stalli...@gmail.com wrote: Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
In that case, i concur, just exclude it from serialization. Melanie On 27/03/2014 19:26, Dahlia Trimble wrote: That field contains the asset data, which, in the case of a sculptie is not a mesh but a texture. For ODE, the resulting mesh will be cached once generated and reused, however the asset will need to be reaccessed later if a mesh with another scale is required, or one with different optional parameters such as invert or mirror being set. If you remove the asset data, it will need another asset fetch and multiple attempts to create a mesh until the asset becomes available again. I'd suggest *not* removing the asset data, but rather exclude it from the serialization when it's being stored for attachment purposes so as to reduce as many asset fetches as possible and keep sim startup/load time low. On Thu, Mar 27, 2014 at 10:41 AM, James Stallings II james.stalli...@gmail.com wrote: Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Another strategy may be do something along the lines of deleting it if the SOP is part of an attachment. Attachments are phantom and do not need physics proxies. On Thu, Mar 27, 2014 at 11:26 AM, Dahlia Trimble dahliatrim...@gmail.comwrote: That field contains the asset data, which, in the case of a sculptie is not a mesh but a texture. For ODE, the resulting mesh will be cached once generated and reused, however the asset will need to be reaccessed later if a mesh with another scale is required, or one with different optional parameters such as invert or mirror being set. If you remove the asset data, it will need another asset fetch and multiple attempts to create a mesh until the asset becomes available again. I'd suggest *not* removing the asset data, but rather exclude it from the serialization when it's being stored for attachment purposes so as to reduce as many asset fetches as possible and keep sim startup/load time low. On Thu, Mar 27, 2014 at 10:41 AM, James Stallings II james.stalli...@gmail.com wrote: Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Attachments can be dropped and then need the proxy again. Melanie On 27/03/2014 19:29, Dahlia Trimble wrote: Another strategy may be do something along the lines of deleting it if the SOP is part of an attachment. Attachments are phantom and do not need physics proxies. On Thu, Mar 27, 2014 at 11:26 AM, Dahlia Trimble dahliatrim...@gmail.comwrote: That field contains the asset data, which, in the case of a sculptie is not a mesh but a texture. For ODE, the resulting mesh will be cached once generated and reused, however the asset will need to be reaccessed later if a mesh with another scale is required, or one with different optional parameters such as invert or mirror being set. If you remove the asset data, it will need another asset fetch and multiple attempts to create a mesh until the asset becomes available again. I'd suggest *not* removing the asset data, but rather exclude it from the serialization when it's being stored for attachment purposes so as to reduce as many asset fetches as possible and keep sim startup/load time low. On Thu, Mar 27, 2014 at 10:41 AM, James Stallings II james.stalli...@gmail.com wrote: Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038 (Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Yes, it probably should stay there and just be excluded from the serialization. The memory impact probably wouldn't be too bad unless it's a unique (per SOP) reference and there are a lot of non-phantom mesh and sculptie objects in the region. Hopefully it's not a unique reference, but I didn't write the part that fetches that data and I haven't looked at it in a long time. I'd suggest just excluding it from serialization and see if that fixes the problem at hand. On Thu, Mar 27, 2014 at 11:42 AM, Melanie mela...@t-data.com wrote: Attachments can be dropped and then need the proxy again. Melanie On 27/03/2014 19:29, Dahlia Trimble wrote: Another strategy may be do something along the lines of deleting it if the SOP is part of an attachment. Attachments are phantom and do not need physics proxies. On Thu, Mar 27, 2014 at 11:26 AM, Dahlia Trimble dahliatrim...@gmail.comwrote: That field contains the asset data, which, in the case of a sculptie is not a mesh but a texture. For ODE, the resulting mesh will be cached once generated and reused, however the asset will need to be reaccessed later if a mesh with another scale is required, or one with different optional parameters such as invert or mirror being set. If you remove the asset data, it will need another asset fetch and multiple attempts to create a mesh until the asset becomes available again. I'd suggest *not* removing the asset data, but rather exclude it from the serialization when it's being stored for attachment purposes so as to reduce as many asset fetches as possible and keep sim startup/load time low. On Thu, Mar 27, 2014 at 10:41 AM, James Stallings II james.stalli...@gmail.com wrote: Knock 'em dead Oren xD On Thu, Mar 27, 2014 at 11:29 AM, Melanie mela...@t-data.com wrote: Looks like you found the culprit! All those suggestions sound good. Melanie On 27 Mar 2014, at 17:03, Oren Hurvitz or...@kitely.com wrote: When a prim is a Sculptie or Mesh, the prim's shape contains a field called SculptData which stores the full mesh or texture (for sculpties). If the prim is serialized then the field SculptData is also serialized, which is a problem because it contains the entire contents of the mesh or texture. This makes actions such as detaching a mesh attachment extremely slow. I think that we should remove SculptData from the serialized XML format of prims. This means that we'll stop serializing it, and when we get an XML with SculptData we'll ignore it. See also: http://opensimulator.org/mantis/view.php?id=7038(Unwearing mesh attachments very slow). As far as I can tell, the shape's SculptData field (in memory) should usually be empty. It only needs to be filled with the asset data in two cases: 1. When the mesh is first uploaded 2. If the Physics system needs to create a physics mesh In both cases, after the mesh data has been used it should be cleared immediately, to save memory. Regarding the behavior of the physics system, I see a few things that could be a problem with the way it's currently implemented. What currently happens is this: ODEPrim.CheckMeshAsset() loads the mesh/sculptie data if it's needed. Later, Meshmerizer.CreateMeshFromPrimMesher() clears the data once it has finished using it. This raises a couple of questions: 1. Where does BulletSim load the mesh data? It doesn't use ODEPrim. 2. It looks like Meshmerizer.CreateMeshFromPrimMesher() can sometimes return early, without clearing the mesh data. Seems to me that it should always clear it. So besides removing SculptData from the XML format of prims, I also want to make Meshmerizer clear the data more aggressively. And I don't know how BulletSim uses meshes, but perhaps it also needs to be changed. Thoughts? Oren -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev -- === http://osgrid.org/ http://simhost.com http://twitter.com/jstallings2 ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is very fast (not a network operation). -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079p7579087.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
If this is also contributing to the very large process memory consumption I reported (http://opensimulator.org/mantis/view.php?id=6987) I'd encourage the kill it from memory and fetch it again later if needed approach. -Original Message- From: opensim-dev-boun...@lists.berlios.de [mailto:opensim-dev-boun...@lists.berlios.de] On Behalf Of Oren Hurvitz Sent: Thursday, March 27, 2014 3:48 PM To: opensim-dev@lists.berlios.de Subject: Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is very fast (not a network operation). ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Then you will see problems when prims are edited. On Thu, Mar 27, 2014 at 12:48 PM, Oren Hurvitz or...@kitely.com wrote: The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is very fast (not a network operation). -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079p7579087.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Ha! I submitted a mantis about this rare case once: http://opensimulator.org/mantis/view.php?id=6080 I textured branches and leaves on a twisted sculpt tree, and then had the trees grow up from a sapling (resize once a second) and this brought OpenSim to its knees (SIM FPS drops to near zero). I found that a helix (a twisted torus prim) had the same problem. I 'solved' the problem by having the trees change only to integer quantized sizes. I assume this worked because someone (viewer or sim) cashed the sculpt data at each different size and now there is only a finite number of sizes... On 3/27/14 12:48 PM, Oren Hurvitz wrote: The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is very fast (not a network operation). -- View this message in context: http://opensim-dev.2196679.n2.nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects-tp7579079p7579087.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev
Re: [Opensim-dev] Stop saving SculptData in serialized SceneObjects
Twisted torii are quite complex prims and usually take the longest time to create a physics proxy (on the order of 5 milliseconds or more) and usually use the most memory. Using integer sizes in your case would reduce the amount of proxies stored in the mesh cache and make better use of it. However, torus prims are procedurally generated and don't rely on sculpt or mesh assets and therefore aren't really affected by the changes being proposed in this thread; at least unless the conversation veers towards optimizing the mesh cache in the sim to reduce or eliminate unused meshes. On Thu, Mar 27, 2014 at 1:32 PM, Mike Higgins m...@kayaker.net wrote: Ha! I submitted a mantis about this rare case once: http://opensimulator.org/mantis/view.php?id=6080 I textured branches and leaves on a twisted sculpt tree, and then had the trees grow up from a sapling (resize once a second) and this brought OpenSim to its knees (SIM FPS drops to near zero). I found that a helix (a twisted torus prim) had the same problem. I 'solved' the problem by having the trees change only to integer quantized sizes. I assume this worked because someone (viewer or sim) cashed the sculpt data at each different size and now there is only a finite number of sizes... On 3/27/14 12:48 PM, Oren Hurvitz wrote: The mesh/texture data is needed only if the prim is resized or otherwise edited as you've described. But in the vast majority of cases, prims are just viewed. We should optimize for the common case, i.e. release the memory. If the asset is needed again it will be loaded from the cache, which is very fast (not a network operation). -- View this message in context: http://opensim-dev.2196679.n2. nabble.com/Stop-saving-SculptData-in-serialized-SceneObjects- tp7579079p7579087.html Sent from the opensim-dev mailing list archive at Nabble.com. ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev ___ Opensim-dev mailing list Opensim-dev@lists.berlios.de https://lists.berlios.de/mailman/listinfo/opensim-dev