sorry, I don't have much advice to offer on a new device, I use old hardware too, but don't have bulky tasks for Octave.
About the parallel package. I never had luck either until today when I saw actual examples here:
http://wiki.octave.org/Parallel_package. Did you try these examples? They kind of work for me (w/ Octave 6.1):
>> system('echo "function y = my_func2(x), y = 42 * x; end" > my_func2.m')
>> pararrayfun (4, @(x) my_func2(x), 1:8) # Still no output?
>> arrayfun (@(x) my_func2(x), 1:8) # This works but is not parallel
42 84 126 168 210 252 294 336
>> pararrayfun (4, @(x) my_func2(x), 1:8)
>> z = pararrayfun (4, @(x) my_func2(x), 1:8) # Aha! A return value is needed?
42 84 126 168 210 252 294 336
>> z = pararrayfun (4, @(x) my_func(x), 1:8) # That's not the end of the story
>> z = pararrayfun (4, @my_func, 1:8) # CL-defined my_func() is jinxed?
>> z = pararrayfun (4, @my_func2, 1:8) # But file-defined my_func2() seems OK
42 84 126 168 210 252 294 336
>> system('echo ''function y = my_delay_func(x), y = 42 * x; printf("Starting %i\\n", x); pause(2); printf ("--Ending %i\\n", x); end'' > my_delay_func.m')
ans = 0
>> system ('cat my_delay_func.m')
function y = my_delay_func(x), y = 42 * x; printf("Starting %i\n", x); pause(2); printf ("--Ending %i\n", x); end
ans = 0
>> my_delay_func(3)
Starting 3
--Ending 3
ans = 126
>> z = pararrayfun (4, @my_delay_func, 1:8)
Starting 1
Starting 4
Starting 3
Starting 2
--Ending 1
Starting 5
--Ending 4
Starting 6
--Ending 3
--Ending 2
Starting 7
Starting 8
--Ending 5
--Ending 6
--Ending 7
--Ending 8
z =
42 84 126 168 210 252 294 336