Skip to content
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

Optimized singleLayer #43

Merged
merged 3 commits into from
Feb 5, 2018
Merged

Conversation

DavidBegert
Copy link
Contributor

@DavidBegert DavidBegert commented Feb 5, 2018

Method/ Time Saved / Mem saved
Apply / 15% / 9.5%
JYmv/ - / 4%
Jmv / - / 2.5%
Jthetamv / - / 3.3%

@coveralls
Copy link

coveralls commented Feb 5, 2018

Coverage Status

Coverage decreased (-0.1%) to 78.156% when pulling b2228ca on DavidBegert:pull-request/b2228ca7 into 12caa91 on XtractOpen:dev.


th1,th2,th3,th4 = splitWeights(this,theta)
dth1,dth2,dth3,dth4 = splitWeights(this,dtheta)
dZ = Jthetamv(this.K,dth1,th1,Y) .+ this.Bin*dth2
dZ::Array{T,2} = Jthetamv(this.K,dth1,th1,Y) .+ this.Bin*dth2
Copy link
Contributor

Choose a reason for hiding this comment

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

I would assume this means Jthetamv(::ConvGEMMKernel) is unstable? Or this.Bin*dth2. Either one, we should follow up

Kop = getOp(this.K,th1)
dZ = Kop*dY;
dZ::Array{T, 2} = Kop*dY;
Copy link
Contributor

Choose a reason for hiding this comment

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

Other fix is to call Amv(this.K, th1, dY) explicitly until we figure out whats going on with the LinearOperators.

Not sure if there is any performance difference, but if it's possible for dZ to not be an Array{T, 2} it will be a more robust method

@klensink klensink merged commit af50a70 into XtractOpen:dev Feb 5, 2018
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

3 participants