Week #11: Writing Tests and Finished Submission
Xingyu-Liu
Published: 08/24/2021
What did you do this week?
What is coming up next?
View Blog Post
Week #10: Supporting immediate arguments in Pythran
Xingyu-Liu
Published: 08/17/2021
What did you do this week?
What is coming up next?
Did you get stuck anywhere?
In
General implementation of supporting immediate arguments,
I met a
AttributeError: 'FunctionDef' object has no attribute 'immediate_arguments'
,
the potential solution is hard-code checking if it is FunctionDef object, if so then skip.
View Blog Post
Week #9: Adding tests for Pythran functions, and review the opened PRs
Xingyu-Liu
Published: 08/09/2021
What did you do this week?
What is coming up next?
Did you get stuck anywhere?
Stuck in supporting keepdims in numpy mean in Pythran, thanks to Serge, he helped me
fixed many problems and this will be completed this week.
View Blog Post
Week #8: Support keepdims in numpy mean, hunt potential algorithms to be improved
Xingyu-Liu
Published: 08/03/2021
What did you do this week?
- ENH: improve siegelslopes via pythranClean code, all checks passed.
- ENH: improve cspline1d, qspline1d, and relative funcs via Pythran
Only improve the private funcs, has passed all the checks. However, find a potential problem:
array assignment res[cond1] = ax[cond1] works fine for int[] or float[] or float[:,:] but not int[:,:]
- WIP: support keepdims in numpy mean
It passed all the checks after I changed to use str(node.value).lower(). I added tests for keepdims=False but there are some check failures.
- ENH: improve _cplxreal, _falling_factorial, _bessel_poly, _arc_jac_sn…
This enhancement is little and seems so meaningless that I opened the PR only in my own repo: they are already fast algorithms.
Now I got stuck in finding potential algorithms to improve: often spending ~10 hrs to find algorithms, ~2hr to improve them.
What is coming up next?
Since it is not easy to find good algorithms anymore and we've already improved some, it is time to change the plan.
Therefore, I will work on:
- Use Pytest and Decorator to support different dype input testing for Pythran imporved functions.
- Revisit the algorithms we worked, get a final conclusion maybe.
- Finish supporting keepdims in numpy mean in Pythran
Did you get stuck anywhere?
Stuck in supporting keepdims in numpy mean in Pythran and finding potential algorithms.
View Blog Post
Week #7: Support keepdims in Pythran's numpy mean
Xingyu-Liu
Published: 07/26/2021
What did you do this week?
What is coming up next?
Did you get stuck anywhere?
While supporting keepdims in numpy mean, I added a function
mean(E const &expr, types::none_type axis, dtype d, std::true_type keepdims)
, but I'm not sure how can I declare the
return for this function . I think we need to calculated the
out_shape
so we can
-> decltype(numpy::functor::asarray{}(sum(expr) / typename dtype::type(expr.flat_size())).reshape(out_shape))
View Blog Post