• All submissions to this site are governed by Second Life Project Contribution Agreement. By submitting patches and other information using this site, you acknowledge that you have read, understood, and agreed to those terms.
Issue Details (XML | Word | Printable)

Key: VWR-3234
Type: Meta Issue Meta Issue
Status: Open Open
Priority: Major Major
Assignee: Unassigned
Reporter: Haravikk Mistral
Votes: 7
Watchers: 4
Operations

If you were logged in you would be able to see more operations.
1. Second Life Viewer - VWR

Meta-Issue: Evaluate/improve/optimise commonly used elements

Created: 16/Nov/07 09:19 AM   Updated: 30/Sep/09 01:31 PM
Return to search
Component/s: None
Affects Version/s: 1.22, 1.23
Fix Version/s: None

Issue Links:
Relates
 

Sub-Tasks  All   Open   
 Sub-Task Progress: 

 Description  « Hide
With a bit of luck I will soon be delving into the SL source code to take a look at various areas that interest me and which I'm hoping to improve, for myself and for the benefit of Second Life in general.

One of the tasks I'm hoping to achieve with help from other open-source developers is to identify, and create JIRA issues for, the most commonly used elements within the Second Life source-code. The kinds of things I'm hoping to identify are things like:

    1. Commonly accessed library functions ##
      What do these library calls do, and how well do they do it? Do we really need to call this function here, can it be delayed or performed in the background somehow? Are there better alternatives? Would a local function be more efficient?
    1. Commonly executed functions ##
      Are there any functions in the code that are executed significantly more than others? What can we do to reduce the frequency these are called, or perform the task they do more quickly? Is the function poorly optimised for a particular platform?
    1. Big loops ##
      Are there any loops or intensive operations that the viewer spends a lot of its time in? Do these cause blocking? Can we somehow reduce the time these require, or perform the task in multiple smaller chunks? Is there a way that we can perform only a part of the work and continue, while doing the rest as a background task for later?
    1. Hacks or high dependency ##
      Is the solution hacky, or otherwise done in a way that may potentially fail or cause issues? Is an element highly dependent on other elements that are not strictly related or which could result in bugs should one of these dependencies change? Can these dependencies be taken out?

It would be good if all open-source developers who've seen things that meet these criteria could create JIRA issues and attach them here. It then becomes easy for other open-source developers (or even interested Lindens) to investigate these functions, libraries etc. and evaluate whether they require further work and pick them up as required.
I'd like to encourage developers who identify functions like these to hand them off here where possible. This allows developers working on issues to concentrate on their own task, while ensuring that someone will come back to it later.

    1. META ISSUE ORGANISATION ##
      If you believe you've found a function or area that fits the purpose of this meta-issue, then please create a JIRA issue for it, then add a link to one of the sub-tasks for this meta-issue (or create one if none are appropriate). Do NOT link JIRA issues to this meta-issue directly, it is likely to feature far too many issues for this to be feasible.

Developers investigating issues linked to here should first look to see if someone is assigned. If not then you may investigate the code from an evaluation perspective, determining if it is in fact an appropriate element and is not already sufficiently optimal. If the element is not appropriate then it should be un-linked. If it is believed to be optimal already then please comment with a description but DO NOT CLOSE unless several developers have come to the same conclusion. Already optimal code needs no further work unless it can be proven to be inefficient.

If an element is not optimal, and you are able to work on it, then please assign the issue to yourself and submit the patches as progress is made. Please provide at least rudimentary benchmarking of the affected element ONLY to illustrate any improvement being made.

    1. Conclusion ##
      The tasks here may not be the most interesting, but in my opinion they may be some of the most rewarding in terms of performance or future development benefits. These should hopefully be ideal tasks for in between other open-source projects or development.


 All   Comments   Change History      Sort Order: Ascending order - Click to sort in descending order
Haravikk Mistral made changes - 16/Nov/07 09:21 AM
Field Original Value New Value
Link This issue is related to by MISC-398 [ MISC-398 ]
Haravikk Mistral made changes - 16/Nov/07 09:22 AM
Description With a bit of luck I will soon be delving into the SL source code to take a look at various areas that interest me and which I'm hoping to improve, for myself and for the benefit of Second Life in general.

One of the tasks I'm hoping to achieve with help from other open-source developers is to identify, and create JIRA issues for, the most commonly used elements within the Second Life source-code. The kinds of things I'm hoping to identify are things like:

## Commonly accessed library functions ##
What do these library calls do, and how well do they do it? Do we really need to call this function here, can it be delayed or performed in the background somehow? Are there better alternatives? Would a local function be more efficient?

## Commonly executed functions ##
Are there any functions in the code that are executed significantly more than others? What can we do to reduce the frequency these are called, or perform the task they do more quickly? Is the function poorly optimised for a particular platform?

## Big loops ##
Are there any loops or intensive operations that the viewer spends a lot of its time in? Do these cause blocking? Can we somehow reduce the time these require, or perform the task in multiple smaller chunks? Is there a way that we can perform only a part of the work and continue, while doing the rest as a background task for later?

## Hacks or high dependency ##
Is the solution hacky, or otherwise done in a way that may potentially fail or cause issues? Is an element highly dependent on other elements that are not strictly related or which could result in bugs should one of these dependencies change? Can these dependencies be taken out?


It would be good if all open-source developers who've seen things that meet these criteria could create JIRA issues and attach them here. It then becomes easy for other open-source developers (or even interested Lindens) to investigate these functions, libraries etc. and evaluate whether they require further work and pick them up as required.
I'd like to encourage developers who identify functions like these to hand them off here where possible. This allows developers working on issues to concentrate on their own task, while ensuring that someone will come back to it later.

## META ISSUE NOTES ##
If you believe you've found a function or area that fits the purpose of this meta-issue, then please create a JIRA issue for it, then add a link to this meta-issue.
Although not strictly correct practise it may be beneficial to use a mixture of "Relates to" and "Is related to by" links to reduce clutter, as this issue may become a collection of the most common SL source-code elements.
Developers investigating issues linked to here should first look to see if someone is assigned. If not then you may investigate the code from an evaluation perspective, determining if it is in fact an appropriate element and is not already sufficiently optimal. If the element is not appropriate then it should be un-linked, if it is believed to be optimal already then please comment with a description but DO NOT CLOSE, unless several developers have come to the same conclusion. Already optimal code needs no further work unless it can be proven to be inefficient.
If an element is not optimal, and you are able to work on it, then please assign the issue to yourself and submit the patches as progress is made. Please provide at least rudimentary benchmarking of the affected element ONLY to illustrate any improvement being made.
With a bit of luck I will soon be delving into the SL source code to take a look at various areas that interest me and which I'm hoping to improve, for myself and for the benefit of Second Life in general.

One of the tasks I'm hoping to achieve with help from other open-source developers is to identify, and create JIRA issues for, the most commonly used elements within the Second Life source-code. The kinds of things I'm hoping to identify are things like:

## Commonly accessed library functions ##
What do these library calls do, and how well do they do it? Do we really need to call this function here, can it be delayed or performed in the background somehow? Are there better alternatives? Would a local function be more efficient?

## Commonly executed functions ##
Are there any functions in the code that are executed significantly more than others? What can we do to reduce the frequency these are called, or perform the task they do more quickly? Is the function poorly optimised for a particular platform?

## Big loops ##
Are there any loops or intensive operations that the viewer spends a lot of its time in? Do these cause blocking? Can we somehow reduce the time these require, or perform the task in multiple smaller chunks? Is there a way that we can perform only a part of the work and continue, while doing the rest as a background task for later?

## Hacks or high dependency ##
Is the solution hacky, or otherwise done in a way that may potentially fail or cause issues? Is an element highly dependent on other elements that are not strictly related or which could result in bugs should one of these dependencies change? Can these dependencies be taken out?


It would be good if all open-source developers who've seen things that meet these criteria could create JIRA issues and attach them here. It then becomes easy for other open-source developers (or even interested Lindens) to investigate these functions, libraries etc. and evaluate whether they require further work and pick them up as required.
I'd like to encourage developers who identify functions like these to hand them off here where possible. This allows developers working on issues to concentrate on their own task, while ensuring that someone will come back to it later.

## META ISSUE NOTES ##
If you believe you've found a function or area that fits the purpose of this meta-issue, then please create a JIRA issue for it, then add a link to this meta-issue.
Although not strictly correct practise it may be beneficial to use a mixture of "Relates to" and "Is related to by" links to reduce clutter, as this issue may become a collection of the most common SL source-code elements.
Developers investigating issues linked to here should first look to see if someone is assigned. If not then you may investigate the code from an evaluation perspective, determining if it is in fact an appropriate element and is not already sufficiently optimal. If the element is not appropriate then it should be un-linked, if it is believed to be optimal already then please comment with a description but DO NOT CLOSE, unless several developers have come to the same conclusion. Already optimal code needs no further work unless it can be proven to be inefficient.
If an element is not optimal, and you are able to work on it, then please assign the issue to yourself and submit the patches as progress is made. Please provide at least rudimentary benchmarking of the affected element ONLY to illustrate any improvement being made.

## Conclusion ##
The tasks here may not be the most interesting, but in my opinion they may be some of the most rewarding in terms of performance or future development benefits. These should hopefully be ideal tasks for in between other open-source projects or development.
Haravikk Mistral made changes - 16/Nov/07 09:24 AM
Link This issue is related to by VWR-1577 [ VWR-1577 ]
Haravikk Mistral made changes - 16/Nov/07 09:25 AM
Link This issue is related to by VWR-864 [ VWR-864 ]
Haravikk Mistral made changes - 18/Nov/07 04:13 AM
Link This issue Relates to VWR-3292 [ VWR-3292 ]
Haravikk Mistral made changes - 20/Nov/07 08:56 AM
Link This issue Relates to VWR-3292 [ VWR-3292 ]
Haravikk Mistral made changes - 20/Nov/07 09:02 AM
Description With a bit of luck I will soon be delving into the SL source code to take a look at various areas that interest me and which I'm hoping to improve, for myself and for the benefit of Second Life in general.

One of the tasks I'm hoping to achieve with help from other open-source developers is to identify, and create JIRA issues for, the most commonly used elements within the Second Life source-code. The kinds of things I'm hoping to identify are things like:

## Commonly accessed library functions ##
What do these library calls do, and how well do they do it? Do we really need to call this function here, can it be delayed or performed in the background somehow? Are there better alternatives? Would a local function be more efficient?

## Commonly executed functions ##
Are there any functions in the code that are executed significantly more than others? What can we do to reduce the frequency these are called, or perform the task they do more quickly? Is the function poorly optimised for a particular platform?

## Big loops ##
Are there any loops or intensive operations that the viewer spends a lot of its time in? Do these cause blocking? Can we somehow reduce the time these require, or perform the task in multiple smaller chunks? Is there a way that we can perform only a part of the work and continue, while doing the rest as a background task for later?

## Hacks or high dependency ##
Is the solution hacky, or otherwise done in a way that may potentially fail or cause issues? Is an element highly dependent on other elements that are not strictly related or which could result in bugs should one of these dependencies change? Can these dependencies be taken out?


It would be good if all open-source developers who've seen things that meet these criteria could create JIRA issues and attach them here. It then becomes easy for other open-source developers (or even interested Lindens) to investigate these functions, libraries etc. and evaluate whether they require further work and pick them up as required.
I'd like to encourage developers who identify functions like these to hand them off here where possible. This allows developers working on issues to concentrate on their own task, while ensuring that someone will come back to it later.

## META ISSUE NOTES ##
If you believe you've found a function or area that fits the purpose of this meta-issue, then please create a JIRA issue for it, then add a link to this meta-issue.
Although not strictly correct practise it may be beneficial to use a mixture of "Relates to" and "Is related to by" links to reduce clutter, as this issue may become a collection of the most common SL source-code elements.
Developers investigating issues linked to here should first look to see if someone is assigned. If not then you may investigate the code from an evaluation perspective, determining if it is in fact an appropriate element and is not already sufficiently optimal. If the element is not appropriate then it should be un-linked, if it is believed to be optimal already then please comment with a description but DO NOT CLOSE, unless several developers have come to the same conclusion. Already optimal code needs no further work unless it can be proven to be inefficient.
If an element is not optimal, and you are able to work on it, then please assign the issue to yourself and submit the patches as progress is made. Please provide at least rudimentary benchmarking of the affected element ONLY to illustrate any improvement being made.

## Conclusion ##
The tasks here may not be the most interesting, but in my opinion they may be some of the most rewarding in terms of performance or future development benefits. These should hopefully be ideal tasks for in between other open-source projects or development.
With a bit of luck I will soon be delving into the SL source code to take a look at various areas that interest me and which I'm hoping to improve, for myself and for the benefit of Second Life in general.

One of the tasks I'm hoping to achieve with help from other open-source developers is to identify, and create JIRA issues for, the most commonly used elements within the Second Life source-code. The kinds of things I'm hoping to identify are things like:

## Commonly accessed library functions ##
What do these library calls do, and how well do they do it? Do we really need to call this function here, can it be delayed or performed in the background somehow? Are there better alternatives? Would a local function be more efficient?

## Commonly executed functions ##
Are there any functions in the code that are executed significantly more than others? What can we do to reduce the frequency these are called, or perform the task they do more quickly? Is the function poorly optimised for a particular platform?

## Big loops ##
Are there any loops or intensive operations that the viewer spends a lot of its time in? Do these cause blocking? Can we somehow reduce the time these require, or perform the task in multiple smaller chunks? Is there a way that we can perform only a part of the work and continue, while doing the rest as a background task for later?

## Hacks or high dependency ##
Is the solution hacky, or otherwise done in a way that may potentially fail or cause issues? Is an element highly dependent on other elements that are not strictly related or which could result in bugs should one of these dependencies change? Can these dependencies be taken out?


It would be good if all open-source developers who've seen things that meet these criteria could create JIRA issues and attach them here. It then becomes easy for other open-source developers (or even interested Lindens) to investigate these functions, libraries etc. and evaluate whether they require further work and pick them up as required.
I'd like to encourage developers who identify functions like these to hand them off here where possible. This allows developers working on issues to concentrate on their own task, while ensuring that someone will come back to it later.

## META ISSUE ORGANISATION ##
If you believe you've found a function or area that fits the purpose of this meta-issue, then please create a JIRA issue for it, then add a link to one of the sub-tasks for this meta-issue (or create one if none are appropriate). Do NOT link JIRA issues to this meta-issue directly, it is likely to feature far too many issues for this to be feasible.

Developers investigating issues linked to here should first look to see if someone is assigned. If not then you may investigate the code from an evaluation perspective, determining if it is in fact an appropriate element and is not already sufficiently optimal. If the element is not appropriate then it should be un-linked. If it is believed to be optimal already then please comment with a description but DO NOT CLOSE unless several developers have come to the same conclusion. Already optimal code needs no further work unless it can be proven to be inefficient.

If an element is not optimal, and you are able to work on it, then please assign the issue to yourself and submit the patches as progress is made. Please provide at least rudimentary benchmarking of the affected element ONLY to illustrate any improvement being made.

## Conclusion ##
The tasks here may not be the most interesting, but in my opinion they may be some of the most rewarding in terms of performance or future development benefits. These should hopefully be ideal tasks for in between other open-source projects or development.
Rob Linden made changes - 22/Dec/07 02:11 AM
Workflow jira [ 16838 ] jira-2007-12-21 [ 24619 ]
Rob Linden made changes - 22/Dec/07 02:21 AM
Workflow jira [ 24619 ] jira-2007-12-21 [ 25285 ]
WarKirby Magojiro made changes - 22/Dec/07 01:03 PM
Issue Type New Feature [ 2 ] Meta Issue [ 6 ]
Rob Linden made changes - 22/Dec/07 03:14 PM
Workflow jira-2007-12-21 [ 25285 ] jira-2007-12-22 [ 31526 ]
Rob Linden made changes - 22/Dec/07 03:36 PM
Workflow jira-2007-12-21 [ 31526 ] jira-2007-12-22 [ 33598 ]
Rob Linden made changes - 22/Dec/07 08:27 PM
Workflow jira-2007-12-22 [ 33598 ] jira-2007-12-22a [ 38725 ]
Rob Linden made changes - 22/Dec/07 08:52 PM
Workflow jira-2007-12-22 [ 38725 ] jira-2007-12-22a [ 40195 ]
Rob Linden made changes - 22/Dec/07 09:44 PM
Workflow jira-2007-12-22 [ 40195 ] jira-2007-12-22a [ 42682 ]
Rob Linden made changes - 22/Dec/07 10:06 PM
Workflow jira-2007-12-22 [ 42682 ] jira-2007-12-22a [ 44046 ]
Soft Linden made changes - 08/Sep/08 08:15 AM
Affects Version/s Source code [ 10012 ]
Sue Linden made changes - 13/Nov/08 11:01 AM
Workflow jira-2007-12-22a [ 44046 ] jira-2008-11-14 [ 62446 ]
Sue Linden made changes - 13/Nov/08 11:18 AM
Workflow jira-2007-12-22a [ 62446 ] jira-2008-11-14 [ 68141 ]
Sue Linden made changes - 13/Nov/08 04:33 PM
Workflow jira-2008-11-14 [ 68141 ] jira-2008-11-14a [ 88107 ]
Sue Linden made changes - 13/Nov/08 04:49 PM
Workflow jira-2008-11-14 [ 88107 ] jira-2008-11-14a [ 93022 ]
Sue Linden made changes - 13/Nov/08 04:59 PM
Workflow jira-2008-11-14 [ 93022 ] jira-2008-11-14a [ 97060 ]
Sue Linden made changes - 13/Nov/08 05:10 PM
Workflow jira-2008-11-14 [ 97060 ] jira-2008-11-14a [ 100901 ]
Sue Linden made changes - 13/Nov/08 05:28 PM
Workflow jira-2008-11-14 [ 100901 ] jira-2008-11-14a [ 107967 ]
Sue Linden made changes - 13/Nov/08 05:49 PM
Workflow jira-2008-11-14 [ 107967 ] jira-2008-11-14a [ 114773 ]
Sue Linden made changes - 13/Nov/08 06:03 PM
Workflow jira-2008-11-14 [ 114773 ] jira-2008-11-14a [ 120282 ]
Sue Linden made changes - 13/Nov/08 06:25 PM
Workflow jira-2008-11-14 [ 120282 ] jira-2008-11-14a [ 128419 ]
Sue Linden made changes - 13/Nov/08 06:43 PM
Workflow jira-2008-11-14 [ 128419 ] jira-2008-11-14a [ 134861 ]
Haravikk Mistral made changes - 30/Sep/09 01:31 PM
Affects Version/s 1.23 [ 10470 ]
Affects Version/s 1.22 [ 10430 ]