Questions on optimizing Mathematica code for higher performance. This may mean faster execution, lower memory usage or both. Not to be confused with mathematical optimization.
5
votes
0answers
71 views
Every second evaluation in notebook front end is slow
I'm having a rather baffling problem that Wolfram was unable to help me diagnose, and I'm hoping one of you geniuses in residence here can figure it out. (I don't get access to the Technical Support ...
1
vote
0answers
42 views
Is the TCPIP link type compressed?
Since I'm already piping a MathLink connection in a ssh tunnel (connect back is a pain!), I wonder if it makes sense to compress the data in the stream (ssh -C). As ...
18
votes
0answers
121 views
Why is StringExpression faster than RegularExpression?
Edit: as noted by Albert Retey the performance difference is only seen when sub expression extraction is performed. If this test is used below the timings are similar:
...
4
votes
3answers
174 views
Improving speed of Exp[]
I'm working on some pretty intense computation in Mathematica; when my code started running slowly, I tracked the source of the problem to Exp[]. I need to ...
5
votes
0answers
48 views
Faster way to perform SameQ[Reduce[…], Reduce[…]]
I'm have some expressions that I need to confirm the equality of. SameQ[Reduce[...], Reduce[...]] works like a charm for the more simple expressions, however when ...
2
votes
0answers
55 views
Speeding up a numerical constrained quadratic optimization
I'm trying to solve a quadratic optimization problem in 35 variables, $\vec{α} = \left< α_1, \ldots, α_{35}\right>$:
$$
\begin{aligned}
&\operatorname*{maximize}_\vec{α}&&1.0\cdot ...
7
votes
0answers
61 views
How to create internally optimized expression for computing with high WorkingPrecision?
I have large dataset and need to fit rather complicated function on it with different values of one of its parameters (this parameter must be fixed in every fit). I use the ...
5
votes
0answers
173 views
7
votes
2answers
100 views
2
votes
3answers
134 views
Using ImageTransformation[] with a lookup table
I need to transform images by ImageTransformation in a time critical application. Therefore I precalculate a lookup table lut of ...
11
votes
4answers
414 views
Can you recommend an efficient method for finding the least integer satisfying my inequality?
I tried find the minimum make
$\frac{1}{2}+\frac{1}{2+\sqrt{2}}+\frac{1}{3
+\sqrt{3}}+...+\frac{1}{n+\sqrt{n}}>15$
Following code is so slow when I use condition
...
9
votes
1answer
152 views
Modular arithmetic - efficiently calculating the remainders of factorials
When working on this question regarding the divisibility of the sum of factorials, I decided to write some code to test "small values" of the problem using the following code.
...
1
vote
1answer
99 views
PDF on TransformedDistribution of two BinomialDistribution too slow
I'd been doing my own convolutions of distributions for some calculations, decided to use built-ins.
With
...
18
votes
1answer
374 views
Transferring a large amount of data in parallel calculations
This question is inspired by one of @whuber's answers
Consider the following code:
...
3
votes
2answers
156 views
How to replace Do loops by Inner
I need to replace Do loops by something else because it takes forever with big programs. I have been hinted towards Inner, but ...
8
votes
3answers
130 views
How can I use the overhang argument to Partition to avoid using PadLeft and PadRight here?
Say I have a list of values v = {v1, v2, v3, ... }. I need to partition these values to perform operations with a sliding window (think ...
2
votes
1answer
81 views
Optimizing a simple calculus using a list of matrices - Repeated dot product between a vector and a list of matrices [closed]
I want to make the following operation :
$$ \begin{bmatrix} \dot q_1\\\dot q_2 \end{bmatrix} + \begin{bmatrix} \begin{bmatrix} q_1 & q_2 \end{bmatrix} \mathbf A_1 \begin{bmatrix} q_1\\ q_2 ...
14
votes
2answers
499 views
Fast Spherical Linear Interpolation of list of quaternions
An accurate way to interpolate between two quaternions is to use Spherical Linear Interpolation (Slerp) because it preserves the unit length, whereas straightforward linear interpolation does not, as ...
3
votes
4answers
163 views
Remove linear trend from data
I have a large data set with 150k lines and two data columns. I noticed that there is a linear trend, which I want to remove. So, I do the following:
first fit with a linear model
...
3
votes
1answer
108 views
Why is this code in functional style is slower than procedural style?
I know that in Mathematica a functional programming style is often more efficient than procedural style programming using For loops. But the code shown below seems ...
2
votes
1answer
237 views
Reading in Huge Text Files
I would like to read in really large text files (about 2GB) into Mathematica. The structure of the file is such that the first row and the first column are text i.e strings. Rest is all numbers. Is it ...
5
votes
0answers
106 views
Parallelizing is much slower than single kernel evaluation?
Starting with a vector of matrices, tVec, I would like to parallelize the multiplication of each element with the same matrix ...
6
votes
2answers
118 views
How can this AbsoluteTime call be made faster?
I need to convert tons of date strings into absolute times. This generates an example data set of 10,000 strings:
...
1
vote
1answer
101 views
how to reduce the time to calculate triple integral
i want to evaluate the following integral, but it takes 15 min to do it. i must reduce the time to calculate it, i have to do a table and create a graph, but takes too long.
anyone have an idea ?
...
5
votes
1answer
265 views
Montgomery Modular Exponentiation
I'm trying to write a Montgomery exponentiation based on this which can compete with Mathematica PowerMod. We know that PowerMod ...
5
votes
0answers
77 views
Compiled function crashes kernel when trying to list over different length arguments
I'm trying to speed up a tally/binning operation that I have to run many times.
I have many lists of between 1 and 10 numbers from the range [1,5] and I want to ...
16
votes
3answers
617 views
Reading periodic elements from a large file
I have a large binary data file (big endian) with 100+ million "rows" of 11 elements, combination of floats and integers.
This is the format:
...
1
vote
0answers
54 views
Significant platform-dependent efficiency when importing data?
I'm curious, as I understand that answer this way:
If you are using a Linux derivative or something like cygwin on
Windows, then this is an efficient solution for reading only the third
field ...
2
votes
2answers
104 views
Importing several huge files with headers & footers
having here several files in ASCII format
http://ge.tt/91rv0Jf/v/0
I want to import, while removing headers and footers and then join the several lists.
...
4
votes
2answers
77 views
Efficient drawing of convex polyhedron given a set of points [duplicate]
I have a set of points in the 3D space and I want to draw the bounding convex polyhedron of those points. A very naïve solution would be to draw a triangle between every three points:
...
13
votes
3answers
368 views
Select performance
I am fairly new to mathematica and working my way thru Paul Wellins book on Mathematica programming so experimenting with various language constructs. I was experimenting with ...
2
votes
1answer
88 views
How can I place gui controls inside Grid? [duplicate]
In all my apps, I am facing a problem about placing the Gui controls inside Grid.
For this purpose, I wrote three functions.
The first function, ...
3
votes
3answers
406 views
Definite integral takes a very long time
I'm trying to integrate the following function:
$$
r_e=\int_0^z\frac{dz}{\sqrt{\Omega_m(1+z)^3+\Omega_\Lambda}}
$$
where $\Omega_\Lambda=1-\Omega_M$ and both $\Omega_\Lambda$ and $\Omega_M$ are real ...
0
votes
2answers
136 views
Fast Autocorrelation Computation
I want to compute the Autocorrelation Function (ACF) of a data table with $10^6$ entries. I know that there is a built-in function in Mathematica for that, but because I do not know how exactly it is ...
13
votes
1answer
271 views
Optimizing a Numerical Laplace Equation Solver
Laplace's Equation is an equation on a scalar in which, given the value of the scalar on the boundaries (the boundary conditions), one can determine the value of the scalar at any point in the region ...
10
votes
4answers
342 views
Finding Local Minima / Maxima in Noisy Data
I'm trying to find local minima / maxima in noisy data, consisting of data values taken at certain time intervals. Ideally, the function should take a pair of lists (one containing time values and one ...
0
votes
0answers
88 views
Speeding up a for loop by removing a Sum command
I am attempting to create an array that has of order 1000 x 1000 entries. In the entry of the last column of each row, I have to carry out a sum that could contains 100s of terms (I only used 40 here ...
7
votes
2answers
140 views
Solving variant of the knapsack/money-changing problem
I'm trying to solve a variant of the knapsack/changing money problem where I have a set of a few numbers and I'm trying to find the linear (integer) combinations of them which are close to a given ...
2
votes
0answers
117 views
MathKernel.exe capped to use only 13% of CPU?
I am using a Windows machine with 8 cores. No other process than Mathematica 8 is using CPU time right now - still the MathKernel.exe CPU usage does not go beyond 13%. My current computation takes ...
13
votes
2answers
307 views
Fastest way to measure Hamming distance of integers
I am looking for a fast and robust way to calculate the Hamming distance of integers. The Hamming distance of two integers is the number of matching bits in their binary representations. I expect that ...
10
votes
2answers
220 views
12
votes
4answers
351 views
How to reduce the InterpolatingFunction building overhead?
I want a linear interpolation from the following example list:
...
6
votes
2answers
325 views
Elegant way to handle columns operations
Inspired by this question from @sjdh and by my recurrent use of columns operations in database sets, I was looking for one way to make columns operations more symetric, so I can handle with matrix and ...
22
votes
6answers
773 views
Faster alternatives for DayOfWeek
It has been noticed on several occasions that DayOfWeek function is rather slow when applied to a large list of dates, e.g. in this recent question. What faster ...
25
votes
3answers
909 views
xkcdConvert routines perform slower in Mathematica 9
I am experiencing some rather large performance decreases in Mathematica version 9.0 using the xkcd-styled plotting routines.
I had used the xkcdConvert code ...
1
vote
2answers
149 views
What ways are there to convert an Integer to a list of digits?
How can I convert an Integer to list of numbers? For example:
781049 ==> {7, 8, 1, 0, 4, 9}
What are the possible ways of ...
1
vote
1answer
171 views
4
votes
0answers
97 views
Speeding up multilinear PRA branch-and-bound algorithm with worst-case exponential time scenario with respect to basic events
The algorithm is a branch-and-bound algorithm that calculates dominances for PRA, probalistic risk assessment. The task was to find faster ways to do it in numerical software such as Matlab but we ...
7
votes
1answer
141 views
Efficiently filling area with disks located at certain points
Starting from a set of points, I want to fill an area using disks. Each disk's center should be one of the points and the disks should not overlap. I've managed to write a function that, given a list ...
42
votes
2answers
2k views
Shaving the last 50 ms off NMinimize
The background:
I have to fit an objective function for ~10 000 datasets in near real time (with near real time being on the order of about 10 seconds). I compile the huge objective function, so that ...



