-
Notifications
You must be signed in to change notification settings - Fork 32
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
JP-3121: initial Code to Implement C-Extensions for Ramp Fit #156
Conversation
944d7e8
to
f92cd65
Compare
01f0840
to
cbb8bb8
Compare
50379a0
to
c65087c
Compare
520a142
to
4bd0669
Compare
a2e8794
to
f9446c2
Compare
9181bbf
to
f644b9c
Compare
49aecef
to
49e2560
Compare
49e2560
to
83f69da
Compare
Regression test run: https://plwishmaster.stsci.edu:8081/job/RT/job/JWST-Developers-Pull-Requests/1104/ |
I see build errors in the logs. Is the code building correctly? |
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #156 +/- ##
==========================================
- Coverage 85.18% 83.73% -1.46%
==========================================
Files 35 35
Lines 6797 6990 +193
==========================================
+ Hits 5790 5853 +63
- Misses 1007 1137 +130 ☔ View full report in Codecov by Sentry. |
I changed the code according to the errors in the log. They didn't cause build problems locally, so didn't know they would cause problems on Jenkins. I have started a new regression test run and it appears to have built correctly: https://plwishmaster.stsci.edu:8081/job/RT/job/JWST-Developers-Pull-Requests/1105/ |
0488219
to
c70d00d
Compare
…oved print statements. Updated comments in testing. There is a problem in the '_cases' negative average dark test.
…ally, but the python code is chosen by default.
Is it safe to assume that the CI test "test_downstream / py311-jwst-cov-xdist" errors are due to the fact that the changes in this PR need corresponding changes in jwst in order to run properly? |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Need to verify whether all issues related to print statements have been resolved. Also, I would suggest leaving the timing calculation in place, at least for now, but turn the reporting of times into debug level log messages, so that we can gather timing info while testing.
src/stcal/ramp_fitting/ols_fit.py
Outdated
# XXX start python time | ||
p_start = time.time() |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
src/stcal/ramp_fitting/ols_fit.py
Outdated
def endianness_handler(ramp_data, gain_2d, readnoise_2d): | ||
""" | ||
Check all arrays for endianness against the system endianness, so when used by the C | ||
extension, the endianness is correct. |
This comment was marked as resolved.
This comment was marked as resolved.
Sorry, something went wrong.
…the 'OLS_C' algorithm.
Yes. I have a JP-3121 for JWST, as well. I have a PR open for JWST for this: spacetelescope/jwst#8355 I will rebase and make sure everything for that JWST PR is good to go. |
🎉 🚀 |
Resolves JP-3121
The C implementation of ramp fitting is complete, with the exception of the special handling for CHARGELOSS processing of read noise.
All CI tests pass in both STCAL and JWST, with minor changes in JWST CI tests. The JWST tests must be written to enforce type for data arrays. I will open a corresponding JWST PR to account for this.
By default ramp fitting still runs the python code. In
ols_fit.py
, there is a boolean variable that acts as a switch to run the python code or C code. It is use_c here:stcal/src/stcal/ramp_fitting/ols_fit.py
Line 662 in 480cec0
If you want to run the C code, set this variable to True.
Checklist
CHANGES.rst
(either inBug Fixes
orChanges to API
)