-
Notifications
You must be signed in to change notification settings - Fork 107
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
perf(node): caching implementation for node operations #830
Open
jayzhudev
wants to merge
14
commits into
openconfig:master
Choose a base branch
from
jayzhudev:perf-caching
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Commits on May 1, 2023
-
perf(node): caching implementation for node operations
- Add caching for high performance Sets/Gets. The CPU usage and performance of GetNode/SetNode calls are significantly reduced after this change. - Improve JSON marshalling performance using go-json. This helps squeeze out the last bit of performance particularly for embedded devices. - Shortcut expensive heap allocations. The repetitive heap allocations may increase GC pressure and increase CPU usage when being called frequently. For the node cache implementation, the applications that use the `ytypes` library maintain the cache(s) on their own. The applications can optionally pass in a pointer of the `node cache` and get a performance boost. Passing in a pointer of the `node cache` is relatively cheap and has a negligible performance impact. This implementation adds optional fields to the APIs and the node arguments and doesn't introduce breaking changes. **Note**: unit tests need to be added for `caching enabled` method calls.
Configuration menu - View commit details
-
Copy full SHA for aaa2966 - Browse repository at this point
Copy the full SHA aaa2966View commit details -
Configuration menu - View commit details
-
Copy full SHA for dea4345 - Browse repository at this point
Copy the full SHA dea4345View commit details
Commits on May 2, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 1007682 - Browse repository at this point
Copy the full SHA 1007682View commit details
Commits on May 6, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 5b6c57c - Browse repository at this point
Copy the full SHA 5b6c57cView commit details -
Configuration menu - View commit details
-
Copy full SHA for 0deb0ca - Browse repository at this point
Copy the full SHA 0deb0caView commit details -
Configuration menu - View commit details
-
Copy full SHA for 108cece - Browse repository at this point
Copy the full SHA 108ceceView commit details -
Configuration menu - View commit details
-
Copy full SHA for 4051c5d - Browse repository at this point
Copy the full SHA 4051c5dView commit details
Commits on May 7, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 43b6568 - Browse repository at this point
Copy the full SHA 43b6568View commit details -
Configuration menu - View commit details
-
Copy full SHA for 286b2e3 - Browse repository at this point
Copy the full SHA 286b2e3View commit details
Commits on May 8, 2023
-
test(ytypes): add node cache tests to
set_test
... and add initial `node_cache_test`.
Configuration menu - View commit details
-
Copy full SHA for df7ba17 - Browse repository at this point
Copy the full SHA df7ba17View commit details -
Configuration menu - View commit details
-
Copy full SHA for 10a5206 - Browse repository at this point
Copy the full SHA 10a5206View commit details -
test(ytypes): add node cache tests to
node_test
and fix a couple is……sues - Fixed the node cache not handling the container type `unmarshalGeneric` correctly - Added a temp node cache work around for memory address changes of slice heads when appending to a slice
Configuration menu - View commit details
-
Copy full SHA for d085040 - Browse repository at this point
Copy the full SHA d085040View commit details -
chore(ytypes): improve node cache error handling
Check nil for node cache stored `schema` and `parent`. An `Internal` error code is returned if either `schema` or `parent` is nil.
Configuration menu - View commit details
-
Copy full SHA for e3863e9 - Browse repository at this point
Copy the full SHA e3863e9View commit details
Commits on May 9, 2023
-
Configuration menu - View commit details
-
Copy full SHA for 212fcc8 - Browse repository at this point
Copy the full SHA 212fcc8View commit details
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.