Skip to content
New issue

Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? # to your account

Drop support for RedisAI 1.2.5 #383

Merged
merged 10 commits into from
Oct 4, 2023

Conversation

al-rigazzi
Copy link
Collaborator

This PR removes support for RedisAI 1.2.5. This also implies that the entries in the GitHub actions matrix is reduced.

@al-rigazzi al-rigazzi requested a review from MattToast October 3, 2023 21:05
@codecov
Copy link

codecov bot commented Oct 3, 2023

Codecov Report

Merging #383 (8742857) into develop (933e7bd) will not change coverage.
The diff coverage is n/a.

Impacted file tree graph

@@           Coverage Diff            @@
##           develop     #383   +/-   ##
========================================
  Coverage    88.34%   88.34%           
========================================
  Files           58       58           
  Lines         3587     3587           
========================================
  Hits          3169     3169           
  Misses         418      418           

Copy link
Member

@MattToast MattToast left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great! I have some small questions and couple of things I'm gonna ask to tack onto this PR:

  1. Can you update the change log for this PR now? I'd like have this documented in case anyone is currently working off of develop and I ESPECIALLY want to make sure that we do not forget to call this out when release time rolls around.
  2. There are a 2 pylint suppressions that needed to be made on account of the pylint version that came from TF 2.6.x. Can you remove them while you are here? They are located at smartsim/entity/entityList.py:36 and smartsim/_core/_cli/validate.py:55.

Other than that and the comments below, this looks ready to go on my end!

Comment on lines 68 to 70
"Instead consider using Python 3.8 or 3.9 with Onnx "
)
if sys.platform == "linux":
msg += "1.2.5 or "
msg += "1.2.7."
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Since we no longer have branching logic based on OS, would you mind folding this into a single str to avoid the extra bin op and alloc?

"Instead consider using Python 3.8 or 3.9 with RedisAI 1.2.7"
#                                              ^^^^^^^^^^^^^
# Also could fix this `Onnx` vs `RAI` typo, while your here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

OK, wait, here there is something I don't understand (and I think @mellis13 also mentioned this): if a user is here, RedisAI 1.2.7 is being used (we do not support other versions), but the problem is that ONNX is not compatible with Python. Should we put the ONNX version (1.11) instead of the RedisAI version?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mellis13 @MattToast unifying warning message thread

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes -- I think we should specify the onnx version. Shouldn't the error message be:

"An onnx wheel is not available for "
f"Python {py_version.major}.{py_version.minor}. "
"Instead consider using Python 3.8 or 3.9 for ONNX 1.11 support"

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

^^ Agreed! lets use that

Copy link
Contributor

@mellis13 mellis13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for this PR -- just a couple of minor questions

@@ -100,7 +93,7 @@ jobs:
sudo make -C builddir install

- name: singularity pull test container # This lets us time how long the pull takes
if: contains( matrix.os, 'ubuntu' ) && matrix.py_v == 3.9 && matrix.rai == '1.2.5'
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does this docker image use an old version of pytorch we need to upgrade (1.9.1 instead of 1.11):

https://github.com/CrayLabs/SmartSim/blob/develop/docker/testing/Dockerfile

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yes, I think you are right. We need to update the container too before we release.

Comment on lines -70 to -71
if sys.platform == "linux":
msg += "1.2.5 or "
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Your removal makes sense but I'm confused by the underlying error message. Shouldn't we be saying that 1.2.7 applies to the redisAI version not the ONNX version?

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah, that is a typo that I just noticed and asked Al to fix up while he is here

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yep, see other comment on modified file - I am a bit confused.

@mellis13
Copy link
Contributor

mellis13 commented Oct 4, 2023

One more comment -- don't forget to add tags to the PR for release documentation

@mellis13
Copy link
Contributor

mellis13 commented Oct 4, 2023

@MattToast @al-rigazzi Should we remove the branching logic in RedisAIBuilder.build_from_git() since we only have 1.2.7 now? It seems like it would make sense for all of 1.2.7 to build from the same commit. What do you all think?

if sys.platform == "darwin" and branch == "v1.2.7" and self.build_onnx:
.

@al-rigazzi al-rigazzi added area: build Issues related to builds, makefiles, installs, etc area: ML Issues related to SmartSim ML classes and utilities labels Oct 4, 2023
Copy link
Member

@MattToast MattToast left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM pending one last error message tweak!! So happy to see those very old ml deps go away! The future is NOW!!

@al-rigazzi al-rigazzi requested a review from mellis13 October 4, 2023 17:59
Copy link
Contributor

@mellis13 mellis13 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks, Al! Can you point out in the merge message that we deprecated 1.2.5 AND changed the commit for 1.2.7 source build just so that it doesn't get lost?

@al-rigazzi al-rigazzi merged commit aaeee3b into CrayLabs:develop Oct 4, 2023
@al-rigazzi al-rigazzi deleted the drop-rai-1.2.5 branch October 4, 2023 22:26
# for free to join this conversation on GitHub. Already have an account? # to comment
Labels
area: build Issues related to builds, makefiles, installs, etc area: ML Issues related to SmartSim ML classes and utilities
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants