You can use the source script from a previous import to import the file (or similar file) again and it will be faster than having JMP re-discover everything. The source script knows how many columns to expect and what the data types are.
A 2GB text file is likely to be even larger in memory; it is possible an 8GB machine is going to be using the disk, a lot, for paging memory.
There is a significant performance improvement in JMP 13.1 for MAC. If you are using JMP on MAC this may be what you need.
This should run in under 15 minutes on a machine with sufficient memory.
start=tickseconds();
data = repeat("1,2,3,4,5\!n",2e8);
stop=tickseconds();
show(stop-start,length(data));
start=tickseconds();
file = savetextfile("$temp\deleteme.csv",data);
stop=tickseconds();
show(stop-start,filesize(file));
data = 0; // release 2GB before opening file
start=tickseconds();
dt = Open(
file,
columns(
New Column( "a", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "b", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "c", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "d", Numeric, "Continuous", Format( "Best", 12 ) ),
New Column( "e", Numeric, "Continuous", Format( "Best", 12 ) )
),
Import Settings(
End Of Line( CRLF, CR, LF ),
End Of Field( Comma, CSV( 1 ) ),
Strip Quotes( 0 ),
Use Apostrophe as Quotation Mark( 0 ),
Use Regional Settings( 0 ),
Scan Whole File( 0 ),
Treat empty columns as numeric( 0 ),
CompressNumericColumns( 0 ),
CompressCharacterColumns( 0 ),
CompressAllowListCheck( 0 ),
Labels( 0 ),
Column Names Start( 0 ),
Data Starts( 1 ),
Lines To Read( "All" ),
Year Rule( "20xx" )
)
);
stop=tickseconds();
show(stop-start,nrows(dt));
Craige